You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@pdfbox.apache.org by ti...@apache.org on 2015/08/12 17:31:47 UTC
svn commit: r1695557 -
/pdfbox/trunk/tools/src/main/java/org/apache/pdfbox/tools/pdfdebugger/streampane/StreamPane.java
Author: tilman
Date: Wed Aug 12 15:31:47 2015
New Revision: 1695557
URL: http://svn.apache.org/r1695557
Log:
PDFBOX-2530: fix indent of closing operators; add BMC/BDC/EMC to indent logic
Modified:
pdfbox/trunk/tools/src/main/java/org/apache/pdfbox/tools/pdfdebugger/streampane/StreamPane.java
Modified: pdfbox/trunk/tools/src/main/java/org/apache/pdfbox/tools/pdfdebugger/streampane/StreamPane.java
URL: http://svn.apache.org/viewvc/pdfbox/trunk/tools/src/main/java/org/apache/pdfbox/tools/pdfdebugger/streampane/StreamPane.java?rev=1695557&r1=1695556&r2=1695557&view=diff
==============================================================================
--- pdfbox/trunk/tools/src/main/java/org/apache/pdfbox/tools/pdfdebugger/streampane/StreamPane.java (original)
+++ pdfbox/trunk/tools/src/main/java/org/apache/pdfbox/tools/pdfdebugger/streampane/StreamPane.java Wed Aug 12 15:31:47 2015
@@ -65,6 +65,9 @@ public class StreamPane implements Actio
public static final String INLINE_IMAGE_BEGIN = "BI";
public static final String IMAGE_DATA = "ID";
public static final String INLINE_IMAGE_END = "EI";
+ public static final String BEGIN_MARKED_CONTENT1 = "BMC";
+ public static final String BEGIN_MARKED_CONTENT2 = "BDC";
+ public static final String END_MARKED_CONTENT = "EMC";
private static final StyleContext CONTEXT = StyleContext.getDefaultStyleContext();
private static final Style OPERATOR_STYLE = CONTEXT.addStyle("operator", null);
@@ -374,13 +377,15 @@ public class StreamPane implements Actio
{
Operator op = (Operator) obj;
- if (!op.getName().equals(END_TEXT_OBJECT) &&
- !op.getName().equals(RESTORE_GRAPHICS_STATE))
+ if (op.getName().equals(END_TEXT_OBJECT)
+ || op.getName().equals(RESTORE_GRAPHICS_STATE)
+ || op.getName().equals(END_MARKED_CONTENT))
{
- writeIndent(docu);
+ indent--;
}
-
- if (op.getName().equals("BI"))
+ writeIndent(docu);
+
+ if (op.getName().equals(INLINE_IMAGE_BEGIN))
{
docu.insertString(docu.getLength(), INLINE_IMAGE_BEGIN + "\n", OPERATOR_STYLE);
COSDictionary dic = op.getImageParameters();
@@ -402,17 +407,13 @@ public class StreamPane implements Actio
String operator = ((Operator) obj).getName();
docu.insertString(docu.getLength(), operator + "\n", OPERATOR_STYLE);
- // nested operators
+ // nested opening operators
if (op.getName().equals(BEGIN_TEXT_OBJECT) ||
- op.getName().equals(SAVE_GRAPHICS_STATE))
+ op.getName().equals(SAVE_GRAPHICS_STATE) ||
+ op.getName().equals(BEGIN_MARKED_CONTENT1) ||
+ op.getName().equals(BEGIN_MARKED_CONTENT2))
{
indent++;
-
- }
- else if (op.getName().equals(END_TEXT_OBJECT) ||
- op.getName().equals(RESTORE_GRAPHICS_STATE))
- {
- indent--;
}
}
needIndent = true;