2
  0  1                      2  3
 *  (x1,y1) ***************  (x2,y2)
 *          *             *
 *          *             *             
 *   4  5   *             *    6 7       
 *  (x3,y3) ***************  (x4,y4)

これは、PdfAnnotation または PDFAnnotation の float 配列の正しい順序ですか? PDF 注釈を作成しようとしましたが、Adobe Reader や acrobat を使用して一般的に作成された注釈のように、注釈は凸ではなく凹です。

4

3 に答える 3

0

iTextを使用して見つけたのは次のとおりです。

*     4  5                         6  7
*   (x3, y3)  *****************  (x4, y4)
*             *               *
*             *               *
*             *               *
*     0  1    *               *    2  3
*   (x1, y1)  *****************  (x2, y2)

この順序を使用すると、Adobe Acrobat のハイライト注釈ツールと同じ凸面効果でハイライトが出力されました。

于 2014-04-04T20:55:45.040 に答える
0

私は iText 2.1.7 でも同じ問題を抱えていました。jrubins が説明した順序はうまくいきませんでした。凹型の注釈が作成されました。最終的に、 lr > ll > ur > ul という正しい順序を見つけました。

    /* 
     * PDF Specification Order - results in broken annotation
     * 
     *  7,8             5, 6
     *  (x,y)___________(x,y)
     *      |           |
     *      |           |
     *      |___________|
     *  (x,y)           (x,y)
     *  1, 2            3, 4 
     */

    /* 
     * Concave order - results in working, but concave annotation; don't know why
     * 
     *  5, 6            7, 8
     *  (x,y)___________(x,y)
     *      |           |
     *      |           |
     *      |___________|
     *  (x,y)           (x,y)
     *  1, 2            3, 4 
     */

    /* 
     * Convex order - this is the one working like expected:
     * 
     *  7,8             5, 6
     *  (x,y)___________(x,y)
     *      |           |
     *      |           |
     *      |___________|
     *  (x,y)           (x,y)
     *  3, 4            1, 2 
     */

    float[] quad = { rect.getRight(), rect.getBottom(), rect.getLeft(),rect.getBottom(), rect.getRight(), rect.getTop(),
            rect.getLeft(), rect.getTop() };
于 2014-10-22T14:07:34.960 に答える