summaryrefslogtreecommitdiff
path: root/pxl/pxfts.txt
diff options
context:
space:
mode:
Diffstat (limited to 'pxl/pxfts.txt')
-rw-r--r--pxl/pxfts.txt177
1 files changed, 177 insertions, 0 deletions
diff --git a/pxl/pxfts.txt b/pxl/pxfts.txt
new file mode 100644
index 000000000..b765e7b04
--- /dev/null
+++ b/pxl/pxfts.txt
@@ -0,0 +1,177 @@
+
+ Copyright (C) 1996 Aladdin Enterprises. All rights reserved.
+ Unauthorized use, copying, and/or distribution prohibited.
+
+ Report on Genoa PCL6 FTS and LaserJet 6MP
+
+This document presents the results of Aladdin's investigation of
+discrepancies between the Genoa PCL6 Functional Test Suite, the published
+PCL XL Feature Reference Protocol Class 1.1 specification, and the behavior
+of the H-P LaserJet 6MP printer.
+
+ Report on Genoa PCL6 FTS and LaserJet 6MP
+
+Introduction
+============
+
+In the course of validating our PCL XL interpreter using the Genoa PCL6
+Functional Test Suite (FTS), we observed a number of discrepancies that,
+after careful investigation, we concluded were due to problems in the FTS
+and/or the printer firmware. In this document, we present these in detail.
+
+This document should be read in conjunction with our separate report on
+discrepancies between the specification and the firmware independent of the
+Genoa FTS.
+
+Changes in a given revision of this document are marked with the revision
+number in [brackets]. Revision history:
+ first issued December 6, 1996
+ rev. [1] December 22, 1996
+ rev. [2] February 6, 1997
+
+General
+=======
+
+We noticed that in many places, the input data contain an extra PopGS that
+doesn't have a matching PushGS. The published specification says that this
+is invalid (i.e., the existence of a PushGS is part of the precondition for
+PopGS). Apparently the printer ignores the extra PopGS.
+
+Individual tests
+================
+
+[2] t101 - BeginSession
+-----------------------
+
+On pages 2 and 3, in the LJ5 printouts, the characters are not distorted
+(stretched vertically on page 2, compressed vertically on page 3) to match
+the non-uniform UnitsPerMeasure. This is a bug in the LJ5 firmware that has
+been corrected in the LJ 6MP.
+
+t305 - SetColorSpace
+--------------------
+
+The two lower rectangles in image 03 are stroked with gray, and are not
+painted. The comment on this image says "The 2nd and 3rd rectangles should
+be stroked and painted with black color." [1] See the entry for
+SetColorSpace in the discrepancies report.
+
+t310 - SetCharShear
+
+On page 1 panel 1 the character shear setting results in font scaling
+factors thar are zero. The Artifex interpreter produces no result,
+the HP 4600 produces a thin one pixel line for the character. We do
+not attempt to emulate this.
+
+
+t314 - SetFillMode
+------------------
+
+The lower figure in all 3 images, ostensibly drawn with the non-zero winding
+number rule, is clearly not drawn with this rule. [1] See the discussion of
+clipping and of SetClipIntersect in the discrepancies report.
+
+
+t321 - SetClipIntersect
+-----------------------
+
+In the lower figure of image 01, the dark lines stop at the edges of an
+invisible rectangle rather than extending all the way to the ellipse. This
+is consistent with the interpretation of SetClipIntersect documented in the
+discrepancies report, but not with the published specification.
+
+t322 - SetClipRectangle
+-----------------------
+
+In image 03, the rectangle border is a medium gray. However, the input data
+are as follows:
+
+ NewPath
+ 200 @GrayLevel SetBrushSource
+ 120 @GrayLevel SetPenSource
+ 40 @PenWidth SetPenWidth
+ 0 @ClipRegion [1200 400 2000 2200] @BoundingBox SetClipRectangle
+ [1200 400 2000 2200] @BoundingBox Rectangle
+ 20 @GrayLevel SetPenSource
+ 0 2925 @Point SetCursor
+ 2400 0 @EndPoint LinePath
+ PaintPath
+
+The Rectangle operator is supposed to leave the path set to a rectangle, so
+the final PaintPath should paint both the rectangle and the line a very dark
+gray; however, as noted in the discrepancies report, Rectangle actually
+clears the path.
+
+t325 - SetClipMode
+------------------
+
+The middle figure of image 03 is a solid disk. However, the input data are
+as follows:
+
+ 0 @GrayLevel SetBrushSource
+ [300 300 4500 2625] @BoundingBox Rectangle
+ PushGS
+ 0 @ClipMode SetClipMode
+ [1800 2325 3000 3525] @BoundingBox EllipsePath
+ [2100 2625 2700 3225] @BoundingBox EllipsePath
+ 0 @ClipRegion SetClipReplace
+ 0 @GrayLevel SetBrushSource
+ [300 2250 4500 3600] @BoundingBox Rectangle
+
+Again, if Rectangle left the path set as documented, this would draw (part
+of) the rectangle as well as the disk.
+
+[2] t329 - SetHalftoneMethod
+----------------------------
+
+The DitherOrigin of the halftone is incorrectly set relative to the origin
+of the default (rotated) user coordinate system rather than to the current
+user coordinate system. This causes the patterns to be shifted slightly
+relative to the Genoa printout. For a test example, see our separate report
+on firmware discrepancies.
+
+t409 - Ellipse
+--------------
+
+Image 04 is light gray. However, it should actually be painted with an
+outer stripe of light gray and an inner strip of dark gray:
+
+ 1 @ColorSpace SetColorSpace
+ 255 @GrayLevel SetBrushSource
+ 180 @GrayLevel SetPenSource
+ 160 @PenWidth SetPenWidth
+ [300 300 2100 800] @BoundingBox RectanglePath % no-op
+ [300 1100 2100 1600] @BoundingBox Ellipse
+ 60 @GrayLevel SetPenSource
+ 60 @PenWidth SetPenWidth
+ PaintPath
+
+The Ellipse command should leave the path set, and the final PaintPath
+should erase the interior of the ellipse (including the inner half of the
+lighter stripe) and then repaint the annulus with the darker color with the
+narrower pen. This is the same problem as in t322 and t325.
+
+t413 - Pie
+----------
+
+Image 05 shows the same problem as noted under t409.
+
+t415 - Rectangle
+----------------
+
+Image 02 shows the same problem as noted under t322 and t325.
+
+t202.bin (Protocol 2.0 fts)
+---------------------------
+
+Panel 01 and others show incorrect spacing when rendering downloaded
+TrueType fonts. This only happens with the AGFA scaler and resolutions
+lower than printer resolutions.
+
+t422.bin (Protocol 2.0 fts)
+---------------------------
+
+A raster pattern of height 1 results in a 0 area pattern which
+produces an error. The error only happens if the device resolution is
+less than 300 dpi.
+