• Armin Le Grand's avatar
    Replace SVGFilter using SVGIO · 3087011e
    Armin Le Grand yazdı
    Next step is to put more logic into the decision
    if Draw or Impress should be loaded - if we have a
    self-exported Impress, import as Impress, else
    (including all not-self-created SVG Graphics) import
    to Draw.
    To do this it is necessary to be able to import to
    different document formats at all. To do this, add
    an internal filter type to the filter mechanism
    (types/registration/...) and decide in the SVG
    XExtendedFilterDetection::detect from SVGFilter
    which one to use.
    Added tooling for SVG detection and more, see
    SVGFileInfo. This allows to detect for SVG, but
    also if the creator was LO and if it was Draw or
    Impress. The document format/filter is choosen
    accordingly.
    Corrected the error with <g visibility="hidden">
    Slides inisde <g class="SlideGroup"> for import
    of self-exported Impress documents. No idea why
    this was written that way, but needs to be fixed
    to get a visible content at all.
    Also adapted the final mapping from pt to 100thmm
    in SvgSvgNode::decomposeSvgNode. Unfortunately
    (and also for unknown reasons) the self-exported
    Impress does not write svg:width/height values,
    thus the adaption from assumed svg-units (px) to
    100thmm has to be skipped.
    Have identified the place in svgio where I can
    embed Pages/Slides to a helper-Primitive to later
    be able to 'break' such GraphicObjects to multiple
    Pages/Slides. I have added a Primitive called
    PageHierarchyPrimitive2D for this purpose.
    
    Change-Id: I38bfef6e7b16479a025fc754e38b4e21a006ad38
    Reviewed-on: https://gerrit.libreoffice.org/55434Tested-by: 's avatarJenkins <ci@libreoffice.org>
    Reviewed-by: 's avatarArmin Le Grand <Armin.Le.Grand@cib.de>
    3087011e
Library_drawinglayer.mk 8.46 KB