diff options
| author | Krzysztof Kosi??ski <tweenk.pl@gmail.com> | 2010-12-15 16:19:28 +0000 |
|---|---|---|
| committer | Krzysztof KosiĆski <tweenk.pl@gmail.com> | 2010-12-15 16:19:28 +0000 |
| commit | 70201e92aa1e700d49279871f2b84082750b8ed8 (patch) | |
| tree | 1886fcdf8ad20d73b92bf4f4bfd3ab1406ba4c66 /src/extension/internal/pdfinput | |
| parent | Fix mask luminance calculation, so the coeffs add up to 1 (diff) | |
| parent | Win32 post-GSoC fixups. (diff) | |
| download | inkscape-70201e92aa1e700d49279871f2b84082750b8ed8.tar.gz inkscape-70201e92aa1e700d49279871f2b84082750b8ed8.zip | |
Merge from trunk (again)
(bzr r9508.1.72)
Diffstat (limited to 'src/extension/internal/pdfinput')
| -rw-r--r-- | src/extension/internal/pdfinput/pdf-input.cpp | 9 | ||||
| -rw-r--r-- | src/extension/internal/pdfinput/pdf-parser.cpp | 10 | ||||
| -rw-r--r-- | src/extension/internal/pdfinput/svg-builder.cpp | 6 |
3 files changed, 19 insertions, 6 deletions
diff --git a/src/extension/internal/pdfinput/pdf-input.cpp b/src/extension/internal/pdfinput/pdf-input.cpp index 8dd4698b5..ae3e473a5 100644 --- a/src/extension/internal/pdfinput/pdf-input.cpp +++ b/src/extension/internal/pdfinput/pdf-input.cpp @@ -3,6 +3,7 @@ * * Authors: * miklos erdelyi + * Abhishek Sharma * * Copyright (C) 2007 Authors * @@ -659,9 +660,9 @@ PdfInput::open(::Inkscape::Extension::Input * /*mod*/, const gchar * uri) { Catalog *catalog = pdf_doc->getCatalog(); Page *page = catalog->getPage(page_num); - SPDocument *doc = sp_document_new(NULL, TRUE, TRUE); - bool saved = sp_document_get_undo_sensitive(doc); - sp_document_set_undo_sensitive(doc, false); // No need to undo in this temporary document + SPDocument *doc = SPDocument::createNewDoc(NULL, TRUE, TRUE); + bool saved = DocumentUndo::getUndoSensitive(doc); + DocumentUndo::setUndoSensitive(doc, false); // No need to undo in this temporary document // Create builder gchar *docname = g_path_get_basename(uri); @@ -735,7 +736,7 @@ PdfInput::open(::Inkscape::Extension::Input * /*mod*/, const gchar * uri) { delete dlg; // Restore undo - sp_document_set_undo_sensitive(doc, saved); + DocumentUndo::setUndoSensitive(doc, saved); return doc; } diff --git a/src/extension/internal/pdfinput/pdf-parser.cpp b/src/extension/internal/pdfinput/pdf-parser.cpp index b37cbb777..ef31cd39f 100644 --- a/src/extension/internal/pdfinput/pdf-parser.cpp +++ b/src/extension/internal/pdfinput/pdf-parser.cpp @@ -1874,6 +1874,9 @@ void PdfParser::doPatchMeshShFill(GfxPatchMeshShading *shading) { void PdfParser::fillPatch(GfxPatch *patch, int nComps, int depth) { GfxPatch patch00, patch01, patch10, patch11; +#ifdef POPPLER_NEW_GFXPATCH + GfxColor color; +#endif double xx[4][8], yy[4][8]; double xxm, yym; double patchColorDelta = colorDeltas[pdfPatchMeshShading-1]; @@ -1890,9 +1893,16 @@ void PdfParser::fillPatch(GfxPatch *patch, int nComps, int depth) { > patchColorDelta) { break; } +#ifdef POPPLER_NEW_GFXPATCH + color.c[i] = GfxColorComp(patch->color[0][0].c[i]); +#endif } if (i == nComps || depth == maxDepths[pdfPatchMeshShading-1]) { +#ifdef POPPLER_NEW_GFXPATCH + state->setFillColor(&color); +#else state->setFillColor(&patch->color[0][0]); +#endif state->moveTo(patch->x[0][0], patch->y[0][0]); state->curveTo(patch->x[0][1], patch->y[0][1], patch->x[0][2], patch->y[0][2], diff --git a/src/extension/internal/pdfinput/svg-builder.cpp b/src/extension/internal/pdfinput/svg-builder.cpp index e343dbf33..8b414239a 100644 --- a/src/extension/internal/pdfinput/svg-builder.cpp +++ b/src/extension/internal/pdfinput/svg-builder.cpp @@ -3,6 +3,7 @@ * * Authors: * miklos erdelyi + * Jon A. Cruz <jon@joncruz.org> * * Copyright (C) 2007 Authors * @@ -77,12 +78,13 @@ struct SvgTransparencyGroup { * */ -SvgBuilder::SvgBuilder(SPDocument *document, gchar *docname, XRef *xref) { +SvgBuilder::SvgBuilder(SPDocument *document, gchar *docname, XRef *xref) +{ _is_top_level = true; _doc = document; _docname = docname; _xref = xref; - _xml_doc = sp_document_repr_doc(_doc); + _xml_doc = _doc->getReprDoc(); _container = _root = _doc->rroot; _root->setAttribute("xml:space", "preserve"); _init(); |
