私はWeb/JavaScriptベースの画像エディタを探していましたが、見つけることができませんでした。鳥小屋のようなものですがPOST
、ホストされているサーバーに直接画像データを戻す機能があります(サーバーに接続する前に鳥小屋で処理する必要はありませんPOST
)。
私は基本的な画像編集(トリミング、サイズ変更、そしておそらくいくつかのフィルタリング機能)だけを探しています。
鳥小屋が解決策だったでしょうが、前述の制限はそれを実行可能として除外します。
私はWeb/JavaScriptベースの画像エディタを探していましたが、見つけることができませんでした。鳥小屋のようなものですがPOST
、ホストされているサーバーに直接画像データを戻す機能があります(サーバーに接続する前に鳥小屋で処理する必要はありませんPOST
)。
私は基本的な画像編集(トリミング、サイズ変更、そしておそらくいくつかのフィルタリング機能)だけを探しています。
鳥小屋が解決策だったでしょうが、前述の制限はそれを実行可能として除外します。
私はAviaryを使用しており、データを取得して新しいページに送信し、asp.netを使用してサーバーに保存するだけです
編集ページで関数を変更しました:
onSaveButtonClicked: function()
{
myEditor.getImageData(function(data)
{
// set image to new data, and close editor
if (myImage)
{
document.getElementById('image2').value=data;
document.form2.submit(); //Send to next page
}
myEditor.close();
});
return false;
}
I added a new form under the first form:
<form name="form2" id="form2"> method="post" action="edit_save_image_task.aspx?filename=<%=filename %>"
<input id="image2" type="hidden" name="image2" value="" />
</form>
次のページで、以下のコードでファイルを保存します。
<script Runat="Server">
Sub Page_Load()
Dim file1,image3
image3 = Replace(request("image2"), vbCrLf, "")
image3 = Replace(image3, vbTab, "")
image3 = Replace(image3, " ", "")
file1=replace(image3,"data:image/png;base64,","")
' Convert the Base64 UUEncoded input into binary output.
Dim binaryData() As Byte
Try
binaryData = System.Convert.FromBase64String(file1)
Catch exp As System.ArgumentNullException
System.Console.WriteLine("Base 64 string is null.")
Return
Catch exp As System.FormatException
System.Console.WriteLine("Base 64 length is not 4 or is " + _
"not an even multiple of 4.")
Return
End Try
'Write out the decoded data.
Dim outFile As System.IO.FileStream
Try
Dim filelocation
filelocation="Where you would like the file saved"
outFile = New System.IO.FileStream(filelocation, _
System.IO.FileMode.Create, _
System.IO.FileAccess.Write)
outFile.Write(binaryData, 0, binaryData.Length - 1)
outFile.Close()
Catch exp As System.Exception
' Error creating stream or writing to it.
System.Console.WriteLine("{0}", exp.Message)
End Try
End Sub
</script>
私は完全なオープン ソース ソリューションを認識していませんが、単純なエディターを構築する場合は、トリミングと回転を実装するのはかなり簡単です。
CamanJS (Repo)ライブラリは、フィルターのオプションになる場合があります 。この活版印刷のヒントも役に立つかもしれません。