void VideoItem::handleSceneGraphInitialized() { refreshItemGeometry(); // initialize texture_node with an empty 1x1 black image QImage emptyImage(1, 1, QImage::Format_RGB32); emptyImage.fill(Qt::black); texture = window()->createTextureFromImage(emptyImage); }
/* void legendText::DoAppendText(const wxString& text,int x,int y, bool overwrite,int maxLength) { //Todo utiliser uniquement l'espace nécessaire à la chaine de caractère wxMemoryDC textDrawer; textDrawer.SetBrush( *wxGREEN_BRUSH ); textDrawer.SetTextBackground(textBackground); textDrawer.SetTextForeground(textForeground); textDrawer.SetFont(textFont); wxSize sizeText; if(maxLength==-1 || maxLength<text.size()) sizeText=textDrawer.GetTextExtent(text); else sizeText=textDrawer.GetTextExtent(wxString("0",maxLength)); if(!foreground_tex) { legendObject::Init(sizeText.GetWidth(),sizeText.GetHeight()); } unsigned char* color=new unsigned char[objConfig.width*objConfig.height*3]; unsigned char* alpha=new unsigned char[objConfig.width*objConfig.height]; memset(color,0,objConfig.width*objConfig.height*3); memset(alpha,255,objConfig.width*objConfig.height); wxImage emptyImage(objConfig.width,objConfig.height,color,alpha); wxBitmap tmpBitmap(emptyImage); textDrawer.SelectObject(tmpBitmap); if(textBackground.Alpha()==255) textDrawer.SetBackgroundMode(wxSOLID); else textDrawer.SetBackgroundMode(wxTRANSPARENT); textDrawer.DrawText(text,x,y); textDrawer.SelectObject(wxNullBitmap); wxImage imageTxt=tmpBitmap.ConvertToImage(); CopyFont(imageTxt.GetData(),imageTxt.GetAlpha(),overwrite); } */ void legendText::DoAppendText(const wxString& text,int x,int y, bool overwrite,int maxLength) { //Todo utiliser uniquement l'espace nécessaire à la chaine de caractère wxBitmap bmp(1,1); wxMemoryDC textDrawer(bmp); textDrawer.SetBrush( *wxGREEN_BRUSH ); textDrawer.SetTextBackground(textBackground); textDrawer.SetTextForeground(textForeground); textDrawer.SetFont(textFont); wxSize sizeText; if(maxLength==-1 || maxLength<text.size()) { sizeText=textDrawer.GetTextExtent(text); }else{ sizeText=textDrawer.GetTextExtent(wxString("0").Pad(maxLength)); } if(!foreground_tex) { legendObject::Init(sizeText.GetWidth(),sizeText.GetHeight()); } unsigned char* color=new unsigned char[sizeText.GetWidth()*sizeText.GetHeight()*3]; unsigned char* alpha=new unsigned char[sizeText.GetWidth()*sizeText.GetHeight()]; memset(color,0,sizeText.GetWidth()*sizeText.GetHeight()*3); memset(alpha,255,sizeText.GetWidth()*sizeText.GetHeight()); wxImage emptyImage(sizeText.GetWidth(),sizeText.GetHeight(),color,alpha); wxBitmap tmpBitmap(emptyImage); textDrawer.SelectObject(tmpBitmap); if(textBackground.Alpha()==255) textDrawer.SetBackgroundMode(wxSOLID); else textDrawer.SetBackgroundMode(wxTRANSPARENT); textDrawer.DrawText(text,0,0); textDrawer.SelectObject(wxNullBitmap); wxImage imageTxt=tmpBitmap.ConvertToImage(); DoCopy(imageTxt.GetData(),imageTxt.GetAlpha(),sizeText.GetWidth(),sizeText.GetHeight(),overwrite,x,y); }
// Get images for the links foreach(QString image, images) { QVariant existingResource = document->resource(QTextDocument::ImageResource, image); if(existingResource.isNull()) { QImage emptyImage(1, 1, QImage::Format_ARGB32); emptyImage.fill(Qt::transparent); document->addResource(QTextDocument::ImageResource, image, emptyImage); // placeholder QUrl url(image); QNetworkRequest request(url); int imageRegexPosition = imageUrlRegex.indexIn(image); if(imageRegexPosition != -1) { // Start downloading the image imagePageMap.insert(image, image); networkAccessManager->get(request); } else { // Parse the image markup for an open graph image webView->load(request); } } }