2

ColdFusion 10 を実行している IIS サーバーで画像に透かしを入れたいクライアントがいます。バッチ更新ですべての画像を削除し、透かしを入れたバージョンと元のバージョンの両方を管理する必要がないようにする方法を探しています。

サーバーに過負荷をかけることなく、ColdFusion を使用して高解像度画像の透かしをオンザフライで実行できますか? robots.txt を使用して検索エンジンのトラフィックからフォルダーを除外すると、訪問者のトラフィックを超えることはなく、これは可能であると考えています。このような柔軟なソリューションは理想的であり、クライアントが再バッチ処理なしで透かしの外観を更新できるようにします。

どのように対処しますか?

4

6 に答える 6

0

あなたの質問には直接関係ありませんが、クライアントが透かしのない画像にWeb経由で直接アクセスできるようにしたくない場合は、robots.txtを使用して検索エンジンからフォルダーを除外するだけでは不十分だと思います.そのフォルダに robots.txt を見る人。元の画像は、Web アクセスできないディレクトリに置く必要があります。

于 2013-11-14T18:30:13.710 に答える
0

これは、Linux サーバー ドライブにマウントされた IIS サーバーにあるイメージを処理するために使用した単純なロジックです。後者から、各画像に透かしを入れ、フォルダーで表される各グループをグループに分離します。1 日あたり約 800 ~ 1000 枚の非常に高品質の画像 (ファイルの最小サイズは 10 MB) を処理しています。ただし、CF10のImgaWrite関数の場合、品質パラメーターを使用して品質を下げます。

<cfloop array="myArrayofStructs" index="carr">
<cfif len(carr.tempPath) GT 0>              
 <cfif !directoryexists(Dirdestn&carr.tempPath&"/")>
    <cfset DirectoryCreate(Dirdestn&carr.tempPath&"/")>
 <cfelse>
    <!---Do Nothing--->
 </cfif>

<cfset destn=Dirdestn&carr.tempPath&"/"&carr.photoid&".jpg">

<cfset source=Expandpath("/imagebank/"&carr.filename)>
<cfif fileexists(Expandpath("/imagebank/"&carr.filename)) AND IsImageFile(Expandpath("/imagebank/"&carr.filename))>
    <cfif !fileexists(destn)>
     <cfimage source="#source#" name="image_1">
     <cfset imagepaste(image_1, watermark, 500, 0)>                                     <cfset imageWrite(image_1, destn,0)>
    </cfif>
</cfif>

于 2014-03-20T05:47:10.657 に答える