port of commit 553998:

I should remember to always also test DVI-files that contain no
papersize-special.

This is only a temporary fix, because the code that handles paper sizes
needs a rewrite anyway.

svn path=/trunk/KDE/kdegraphics/kviewshell/plugins/dvi/; revision=554000
remotes/origin/kdvi
Wilfried Huss 20 years ago
parent 2677200ed8
commit 3b9f4f3cb0
  1. 6
      dviRenderer.cpp
  2. 6
      kdvi_multipage.cpp
  3. 2
      renderedDviPagePixmap.h

@ -160,6 +160,12 @@ RenderedDocumentPagePixmap* dviRenderer::drawPage(const JobId& id)
globalColor = Qt::black;
SimplePageSize ps = sizeOfPage(page->getPageNumber());
if (!ps.isValid())
{
RenderedDviPagePixmap* DVIpage = static_cast<RenderedDviPagePixmap*>(page);
ps = DVIpage->customPageSize;
}
int pageHeight = ps.sizeInPixel(resolution).height();
int pageWidth = ps.sizeInPixel(resolution).width();
page->resize(pageWidth, pageHeight);

@ -412,8 +412,12 @@ DocumentWidget* KDVIMultiPage::createDocumentWidget(PageView *parent, DocumentPa
RenderedDocumentPagePixmap* KDVIMultiPage::createDocumentPagePixmap(JobId id) const
{
RenderedDocumentPagePixmap* page = new RenderedDviPagePixmap(id);
RenderedDviPagePixmap* page = new RenderedDviPagePixmap(id);
page->setupObservers(dataModel);
// Needed for DVI files without a papersize-special
page->customPageSize = dataModel->userPreferredPageSize();
return page;
}

@ -44,6 +44,8 @@ class RenderedDviPagePixmap : public RenderedDocumentPagePixmap
generated when the current page is drawn.
*/
Q3ValueVector<Hyperlink> sourceHyperLinkList;
SimplePageSize customPageSize;
};
#endif

Loading…
Cancel
Save