画像を自分のUIにアップロードしてトリミングし、それを自分のサーバーに送ることができるファイルアップローダーを作成したいと思います。私はファイルをアップロードするためにngFileUploadを使用しており、うまくいきました。指示どおりにngImgCropをプロジェクトに追加し、htmlとcssをhttp://jsfiddle.net/danialfarid/xxo3sk41/590/からプロジェクトにインポートして使用方法を調べました。一見するとすべてがよく見えますが、ハードドライブから画像を選択すると、作図領域には表示されません。何かが隠れていたり、何か間違っていますか?ここにjsfiddle htmlとcssがあります:ng-file-uploadとngImgCropはどのように使用しますか?
<style>
.cropArea {
background: #E4E4E4;
overflow: hidden;
width:500px;
height:350px;
}
</style>
<div>Crop Image and Upload</div>
<button ngf-select ng-model="picFile" accept="image/*">
Select Picture</button>
<div ngf-drop ng-model="picFile" ngf-pattern="image/*"
class="cropArea">
<img-crop image="picFile | ngfDataUrl"
result-image="croppedDataUrl" ng-init="croppedDataUrl=''">
</img-crop>
</div>
<div>
<img ng-src="{{croppedDataUrl}}" />
</div>
<button ng-click="upload(croppedDataUrl, picFile.name)">Submit</button>
私はアップロードのためだけに動作するコードを持っています。画像が期待通りに表示されます。私はなぜそれが他のものではなく、そのためであるのだろうと思います。このコードは、ng-file-uploadで使用できます。
<div class="photo-upload-text">Upload your image</div>
<a class="upload-button" ngf-select ng-model="logo" href="#">Choose File </a>
<img ngf-src="logo" ngf-default-src="'/thumb.jpg'" ngf-accept="'image/*'">
最後に、2つの例を示しました。これは私が画像をトリミングすることができますが、簡単にアップロードできるプレフィックスのないbase64ファイルを生成しません。もう1つは類似していますが、切り抜きのために画像を上にしません。
は、私はこれは良いbase64でファイルを提供してだと思うが、私は
<div>Crop Image and Upload</div>
<button ngf-select ng-model="picFile" accept="image/*">Select Picture</button>
<div ngf-drop ng-model="picFile" ngf-pattern="image/*"class="cropArea">
<img-crop image="picFile | ngfDataUrl" result-image="croppedDataUrl" ng-init="croppedDataUrl=''"></img-crop>
</div>
<div>Cropped Image:</div>
<div>
<img ng-src="{{croppedDataUrl}}" />
</div>