0

イメージを新しく初期化された Oracle ORDImage オブジェクトにロードし、PL/SQL で処理しています。プロパティを読み取ることはできますが、process() メソッドで処理することはできません。

vLocalImage ORDImage := ORDImage.init();
...
vLocalImage.source.localdata := PORTAL.wwdoc_admin.get_document_blob_content(pFile);
vLocalImage.setProperties();
...
if vLocalImage.width > lMaxWidth
then
vLocalImage.process('maxScale 534 401');
end if;

これにより、縦横比を維持しながら画像が縮小され、幅が 534 ピクセル以下、高さが 401 ピクセル以下になります。

ただし、次のエラー スタックが表示されます。

Internal error: ORA-29400: data cartridge error
IMG-00710: unable to write to destination image
ORA-01031: insufficient privileges

他の操作 (「90 度回転」など) を試しても、同じエラーが発生します。

4

2 に答える 2

4

ドキュメンテーションには、ORDImage を「その場で」編集できるはずであると記載されていますが、私はそれを機能させることができませんでした。

代わりに、新しい ORDImage オブジェクトを作成し、processCopy を使用しました。

    vNewImage ORDImage;
...
    vLocalImage.processCopy('maxScale 534 401', vNewImage);
于 2008-10-31T10:41:50.013 に答える
0

l_ordimage を取得するために使用する select ステートメントを表示できますか? このエラーの主な原因は、select ステートメントに「for update」がない場合にあるようですが、現在、intermedia をテストすることができません。

于 2008-09-18T11:58:51.837 に答える