summaryrefslogtreecommitdiffstats
path: root/src/extension/internal/cairo-render-context.cpp (follow)
Commit message (Collapse)AuthorAgeFilesLines
* Remove #include "config.h" wherever possibleEduard Braun2018-10-011-1/+1
|
* Use _WIN32 instead of WIN32Eduard Braun2018-10-011-5/+5
| | | | | | | | The former is guaranteed to be set for any compiler targeting win32, the latter is implementation dependent (but works for gcc) See also http://nadeausoftware.com/articles/2012/01/c_c_tip_how_use_compiler_predefined_macros_detect_operating_system
* Fix opacity of bitmap images in PDF exportEduard Braun2018-08-281-1/+1
| | | | | | | | | | | | This is a follow-up to 1e31c41a0ef4b0f383d4f9d2941f643ae67ca646. As it turns out the same issue also applied to bitmap images embedded in the SVG. Replacing 'cairo_paint_with_alpha()' -> 'cairo_paint()' prevents reducing opacity when rendering the bitmap onto a cairo surface. Opacity should already be properly handled in CairoRenderContext::popLayer()
* Refactor with Tav helpJabier Arraiza2018-08-051-1/+1
|
* Revert changesJabier Arraiza2018-08-051-25/+3
|
* Allow inkscape handle units and percent in dasharray and dashoffset. Add ↵Jabier Arraiza2018-08-051-3/+25
| | | | pref optional to scale dashes on stroke scale
* Replace functions with methods in SPColor.Emmanuel Gil Peyrot2018-06-191-4/+4
|
* Run clang-tidy’s modernize-redundant-void-arg pass.Emmanuel Gil Peyrot2018-06-191-17/+17
|
* Run clang-tidy’s modernize-deprecated-headers pass.Emmanuel Gil Peyrot2018-06-181-5/+5
| | | | This renames most C <*.h> includes into C++ <c*> includes.
* Run clang-tidy’s modernize-use-nullptr pass.Emmanuel Gil Peyrot2018-06-181-35/+35
| | | | | This replaces all NULL or 0 with nullptr when assigned to or returned as a pointer.
* Fix typoMarc Jeanmougin2018-05-091-1/+1
|
* Make the command-line PDF output reproducible.Chris Lamb2018-03-181-0/+43
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Whilst working on the Reproducible Builds effort [0], we noticed that inkscape generates output that is not reproducible: $ cp /usr/share/icons/gnome/scalable/places/debian-swirl.svg . $ inkscape -z debian-swirl.svg --export-width=25 --export-pdf=a.pdf $ sleep 1 $ inkscape -z debian-swirl.svg --export-width=25 --export-pdf=b.pdf $ sha1sum *.pdf bee6f300a8fce628e94febd0700fa97f90aa7b37 a.pdf 32f26595ec1957c7e714174e007c452f6cb5dd79 b.pdf This is affecting (at least) the "debian-astro" package: │ │ │ ├── ./usr/share/pixmaps/Debian-Astro-logo.pdf │ │ │ │ ├── pdftk {} output - uncompress │ │ │ │ │ @@ -357,15 +357,15 @@ │ │ │ │ │ << │ │ │ │ │ /Type /Catalog │ │ │ │ │ /Pages 1 0 R │ │ │ │ │ >> │ │ │ │ │ endobj │ │ │ │ │ 6 0 obj │ │ │ │ │ << │ │ │ │ │ -/CreationDate (D:20180315093948-12'00) │ │ │ │ │ +/CreationDate (D:20190418180346+14'00) │ │ │ │ │ /Producer (cairo 1.15.10 \(http://cairographics.org\)) │ │ │ │ │ >> │ │ │ │ │ endobj xref After applying this patch (which uses SOURCE_DATE_EPOCH [1]): $ export SOURCE_DATE_EPOCH=1521324801 $ […] $ sha1sum *.pdf 620bf8469600ab744ffa6fcc3eee4c6845f4f159 a.pdf 620bf8469600ab744ffa6fcc3eee4c6845f4f159 b.pdf This was originally filed in Debian as #893314 [2]. [0] https://reproducible-builds.org/ [1] https://reproducible-builds.org/specs/source-date-epoch/ [2] https://bugs.debian.org/893314 Signed-off-by: Chris Lamb <chris@chris-lamb.co.uk>
* Move classes derived from SPObject to own directory.Tavmjong Bah2018-01-301-10/+10
| | | | A lot of header clean-up.
* CairoRenderer: print warning if rendering failedEduard Braun2017-12-041-1/+5
| | | | | | It happen often that the rendering was interrupted early but the final "cairo_surface_status" claims success which results in incomplete output but no user-visible warning.
* Proper fix for multipage PDF+Latex exportEduard Braun2017-12-041-2/+33
| | | | | | | | | | | | | | | | | | | | | | | | | The previous implementation [1] allowed to sandwich text between graphical objects by outputting multiple (partial) PDF pages which are then stacked in the final document to reveal the full image. However this code failed for clipped/masked/transparent objects as those are treated specially by the renderer resulting in missing pages in the output causing [2]. The attempt to workaround this issue which was committed in e4dea66a338824037b6c35b262aa8db4004b6581 (now reverted) fixed document creation in LaTeX by inserting blank pages but did not actually fix the issue with clipped/masked/transparent objects typically resulting in a single page with the full image and all text put on top. This commit resolves the underlying issue, making the former workaround unnecessary and allowing for proper overlaying of text and arbitrarily clipped/masked/transparent objects Fixed bugs: - https://bugs.launchpad.net/inkscape/+bug/771957 [1] - https://bugs.launchpad.net/inkscape/+bug/1417470 [2]
* Revert "Fix PDF+TeX output for text inside groups with clip/mask"Eduard Braun2017-12-041-32/+3
| | | | This reverts commit e4dea66a338824037b6c35b262aa8db4004b6581.
* Two fixes (should work on Linux now)Eduard Braun2017-11-211-3/+2
| | | | | | | | | | - do not call cairo_show_page as the GtkPrintOperation seems to do that internally (calling it manually will emit the current page, clear it, and the cleared page seems to be emitted in error later) - we can (and should) still call cairo_surface_destroy as it's doing reference counting internally (we increase the reference count in CairoRenderContext::setSurfaceTarget) and won't actually destroy anything until the count reaches zero
* Fix printing multiple copies of a documentEduard Braun2017-11-201-4/+7
| | | | | | | | | | | | | Previously only the first page was printed properly, all following pages were either blank or were not printed at all. This was caused by finishing/destroying the cairo surface of the cairo context associated with the GtkPrintContext used for printing which made it impossible to draw to it for any consecutive page Fixed bugs: - https://bugs.launchpad.net/inkscape/+bug/1733424 - https://bugs.launchpad.net/inkscape/+bug/490866
* Misc. typosUnknown2017-11-071-2/+2
| | | | | | | | | | | | Found using `codespell -q 3 -w --skip="*.svg,*.po,*.ts,./share/tutorials,./src/libavoid,./packaging/win32/languages,./man,./src/2geom" -I ../inkscape-whitelist.txt` whereby whitelist file contained: ``` dum iff glight substract te upto ```
* Removed all GSList occurences in .h filesMarc Jeanmougin2017-10-011-7/+7
|
* [Bug #1417470] Fix PDF+TeX output for text inside groups with clip/maskMax Gaukler2017-06-131-3/+32
| | | | | Fixes Bug: - https://launchpad.net/bugs/1417470
* Fix PDF export with respect to 'image-rendering'.Tavmjong Bah2017-05-291-5/+5
| | | (bzr r15715)
* [Bug #1537497] Icon preview doesn't render background.tghs2017-01-251-1/+1
| | | | | | Fixed bugs: - https://launchpad.net/bugs/1537497 (bzr r15446)
* Rename <mesh> to <meshgradient> per SVG 2 CR specificiation.Tavmjong Bah2016-09-271-3/+3
| | | | | Note: <mesh> has been repurposed to be a special shape that tightly wraps a mesh gradient. (bzr r15137)
* Renamed children list in SPObjectAdrian Boguszewski2016-07-141-3/+3
| | | (bzr r14954.1.21)
* Second part of new SPObject children listAdrian Boguszewski2016-07-131-12/+11
| | | (bzr r14954.1.19)
* Add PDF/PS output support for 'paint-order' property.Tavmjong Bah2016-03-081-17/+73
| | | (bzr r14696)
* Support rendering of radial gradients with the 'fr' attribute. New in SVG 2.Tavmjong Bah2016-01-091-1/+2
| | | (bzr r14569)
* replaced remaining GHashTable with std::mapMarc Jeanmougin2015-12-091-7/+7
| | | (bzr r14504.1.16)
* static code analysisKris De Gussem2015-12-071-3/+3
| | | (bzr r14510)
* merged trunkTomasz Boczkowski2015-05-091-0/+1
|\ | | | | (bzr r14059.1.21)
| * fixes a few of jenkins warningsMarc Jeanmougin2015-05-081-0/+1
| | | | | | (bzr r14126)
* | renamed SPPattern methods to match coding styleTomasz Boczkowski2015-05-031-8/+8
| | | | | | (bzr r14059.1.20)
* | Introduced fixes after merge proposal reviewTomasz Boczkowski2015-05-031-1/+0
| | | | | | (bzr r14059.1.16)
* | merged SPPattern c++-sification from svgpaints branchTomasz Boczkowski2015-04-251-8/+8
|\ \ | |/ |/| (bzr r14059.1.2)
| * SPPattern c++-sification: replacing pattern_ functions by methods pt1Tomasz Boczkowski2014-05-271-8/+8
| | | | | | (bzr r13341.6.19)
| * SPPattern c++-sification: replaced guint by bool and enumTomasz Boczkowski2014-05-261-2/+2
| | | | | | (bzr r13341.6.16)
* | Enable PDF/PS/EPS export for gradient mesh (bug #1363369)Adrian Johnson2015-03-071-0/+5
| | | | | | (bzr r13971)
* | change default pdf import resolution to 96 dpiAlvin Penner2014-11-021-3/+3
| | | | | | (bzr r13660)
* | Refactoring hatch to remove memory leaks (bad GTKish casting macros) and ↵Jon A. Cruz2014-10-181-10/+11
| | | | | | | | | | uninitialized value. (bzr r13622)
* | Merged hatch pdf and png export codeTomasz Boczkowski2014-10-141-17/+99
|/ | | (bzr r13611.1.9)
* cairo-render-context: swap order of header inclusion to redefinition clash ↵Johan B. C. Engelen2014-03-211-1/+1
| | | | | of #define STRICT in pangowin32.h with windef.h (pango should check if STRICT is already defined or not) (bzr r13180)
* Change stroke-dasharray and stroke-dashoffset handling to match other ↵Tavmjong Bah2014-03-111-3/+7
| | | | | | | properties. Split style.h into more manageable size files. (bzr r13135)
* Set bitmap upscaling preference in Cairo based PS and PDF output.Tavmjong Bah2014-02-121-1/+22
| | | (bzr r13025)
* drop useless checks for hard Cairo version dependencyAlex Valavanis2014-01-151-4/+0
| | | (bzr r12933)
* Encapsulate the shared memory hack for Cairo and GdkPixbuf in a classKrzysztof Kosi??ski2013-09-191-4/+4
| | | | | called Inkscape::Pixbuf. Replace usage in the code as appropriate. (bzr r12531)
* Improve the functions which create GdkPixbuf from Cairo surfaceKrzysztof Kosi??ski2013-09-131-24/+23
| | | | | | | | and vice versa. Simplifies some code. Also introduce proper refcounting into svg_preview_cache.cpp and fix its users. (bzr r12512)
* use multiple graphic/text layers for pdf+latex outputDavid R. Bild2013-08-291-2/+32
| | | | | | Fixed bugs: - https://launchpad.net/bugs/771957 (bzr r12487.1.2)
* Move omit text feature from cairo renderer to contextDavid R. Bild2013-08-261-0/+14
| | | (bzr r12487.1.1)
* Merge Google Summer of Code unit refactor.Matthew Petroff2013-08-061-3/+2
|\ | | | | (bzr r12471)