我正在使用DropzoneJS脚本通过拖放来上传图像,但现在我正在寻找一种解决方案,以便在上传到服务器文件夹之前如何添加带有文件名的当前时间戳,因为我无法上传相同的图像,如果文件已存在于该文件夹中.
我也在下面提到了stackoverflow链接,但我很困惑在哪里实现它.
这是dropzone.js脚本供参考
是否有一个很好的例子,说明如何在asp.net mvc上传多个图像文件?我知道我们可以使用HttpPostedFileBase上传一个文件.有没有办法通过单击一个按钮上传多个文件?
我之前在webform中的ajaxtoolbox中使用了文件上传,并且喜欢它的工作原理.在MVC中有类似的方式吗?或者,是否有现成的控制可以很好地做到这一点?自由控制更好,但即使它花费一些$也可以.
谢谢
我必须在我的项目目录的静态文件夹中上传一些图像,但我不知道如何对我的代码说.在下面的code.py中,我能够上传一个图像并将其存储在静态文件夹的同一级别的项目目录中,但我希望这个图像可以存储在INSIDE静态文件夹中.
@app.route('/uploader', methods = ['GET', 'POST'])
def upload_file():
if request.method == 'POST':
f = request.files['file']
f.save(secure_filename(f.filename))
return render_template('end.html')
Run Code Online (Sandbox Code Playgroud)
我该怎么办?多谢你们
我在一个Web应用程序上工作,用于绘制图像.我使用CANVAS元素和javascript来绘制它,但我有一个问题:如何从用户的PC加载图像并在画布上绘制?我不想将它保存在服务器上,只在网页上保存!
这是代码的缩短版本(完整代码太长):
HTML:
Open file: <input type="file" id="fileUpload" accept="image/*" /><br />
<canvas id="canvas" onmousemove="keepLine()" onmouseup="drawLine()" onmousedown="startLine()" width="900" height="600" style="background-color:#ffffff;cursor:default;">
Please open this website on a browser with javascript and html5 support.
</canvas>
Run Code Online (Sandbox Code Playgroud)
JavaScript的:
var x = 0;
var y = 0;
var clicked = false;
var canvas = document.getElementById("canvas");
var context = canvas.getContext("2d");
context.strokeStyle = "black";
context.lineCap = "round";
canvas.addEventListener('mousemove', function(e) { getMousePos(canvas, e); }, false);
takePicture.onchange = function (event) {
var files = event.target.files,
file;
if (files && files.length …Run Code Online (Sandbox Code Playgroud) 我正在使用以下代码将单个图像上传到服务器:
private static func urlRequestWithComponents(urlString:String, parameters:Dictionary<String, String>, imageData:NSData?, imageName: String) -> (URLRequestConvertible , NSData) {
// create url request to send
let mutableURLRequest = NSMutableURLRequest(URL: NSURL(string: urlString)!)
mutableURLRequest.HTTPMethod = Alamofire.Method.POST.rawValue
let boundaryConstant = "myRandomBoundary12345";
let contentType = "multipart/form-data;boundary="+boundaryConstant
mutableURLRequest.setValue(contentType, forHTTPHeaderField: "Content-Type")
// create upload data to send
let uploadData = NSMutableData()
if(imageData != nil && imageData?.length != 0) {
// add image
uploadData.appendData("\r\n--\(boundaryConstant)\r\n".dataUsingEncoding(NSUTF8StringEncoding)!)
uploadData.appendData("Content-Disposition: form-data; name=\"\(imageName)\"; filename=\"\(StringHelper.sharedInstance.randomString(5)).png\"\r\n".dataUsingEncoding(NSUTF8StringEncoding)!)
uploadData.appendData("Content-Type: image/png\r\n\r\n".dataUsingEncoding(NSUTF8StringEncoding)!)
uploadData.appendData(imageData!)
}
// add parameters
for (key, value) in parameters { …Run Code Online (Sandbox Code Playgroud) 基本上我使用listviews插入事件插入图像,尝试从fileupload控件调整图像大小,然后使用LINQ将其保存在SQL数据库中.
我找到了一些代码来在fileupload控件中创建内容的新位图,但这是将它存储在服务器上的一个文件中,从这个来源,但我需要将位图保存回SQL数据库,我认为我需要转换回byte []格式.
那么如何将位图转换为byte []格式?
如果我以错误的方式解决这个问题,我将不胜感激,你可以纠正我.
这是我的代码:
// Find the fileUpload control
string filename = uplImage.FileName;
// Create a bitmap in memory of the content of the fileUpload control
Bitmap originalBMP = new Bitmap(uplImage.FileContent);
// Calculate the new image dimensions
int origWidth = originalBMP.Width;
int origHeight = originalBMP.Height;
int sngRatio = origWidth / origHeight;
int newWidth = 100;
int newHeight = sngRatio * newWidth;
// Create a new bitmap which will hold the previous resized bitmap
Bitmap newBMP …Run Code Online (Sandbox Code Playgroud) 我使用ASP.NET Mvc 3和Microsoft.Web.Helpers NuGet包实现了图像文件上传.该实现很简单,因为它允许您浏览文件并将其上载到指定的目录.
以下是我使用ASP.NET MVC 3和Microsoft.Web.Helpers NuGet插件的图像上传解决方案.

现在是ViewModel代码
namespace MvcImageUpload.Models {
public class ImageUploadViewModel {
[UIHint("UploadedImage")]
public string ImageUrl { get; set; }
public string ImageAltText { get; set; }
}
}
Run Code Online (Sandbox Code Playgroud)
现在对于控制器我只是把它放到了Home控制器中,因为这只是一个让它工作的模拟项目.我刚添加了一个ActionResult将ImageUploadViewModel作为参数.
public ActionResult Upload(ImageUploadViewModel model) {
var image = WebImage.GetImageFromRequest();
if (image != null) {
if (image.Width > 500) {
image.Resize(500, ((500 * image.Height) / image.Width));
}
var filename = Path.GetFileName(image.FileName);
image.Save(Path.Combine("../Uploads/Images", filename));
filename …Run Code Online (Sandbox Code Playgroud) 当我试图提交表单时,发生以下错误:Validation failed: Images imageable must exist并呈现相同的new.html.erb视图.
如果我评论了file field在new.html.erb.产品正在成功创建.
ProductsController的:
def new
@product = Product.new
end
def create
@product = Product.create!(product_params)
if @product.save
redirect_to products_path, notice: "Product Created Successfully"
else
render "new"
end
end
def product_params
params.require(:product).permit(:name, :quantity, :price, images_attributes: [:id, :photo, :_destroy])
end
Run Code Online (Sandbox Code Playgroud)
new.html.erb:
<%= nested_form_for @product, html: { multipart: true } do |f|%>
<h2>New</h2>
<P> <%= f.label :name %> <%= f.text_field :name %> </P>
<P> <%= f.label :quantity %> <%= f.text_field …Run Code Online (Sandbox Code Playgroud) 发现这很好,很快实现.它工作得很好,但在上传图像之前我想要它,它们被调整到最大宽度但保持比率.
假设我正在上传宽度为5000像素的图像,我希望将其调整为1000px宽度,但保持高度比,然后保存最终图像.
用法示例:
/* shrink() - will shrink/resize the image according to the given dimensions (in pixels)
* NOTE, a folder called 'shrinked_images' will be created first to store the uploaded image
*/
$bulletProof
->fileTypes(array("jpg", "gif", "png", "jpeg"))
->uploadDir("shrinked_images")
->shrink(array("height"=>100, "width"=>200))
->upload($_FILES["pictures"]);
Run Code Online (Sandbox Code Playgroud)
GitHub:
https://github.com/samayo/bulletproof
我已阅读了文档,但无法找到有关调整大小的内容.我能在代码中找到的只是缩小函数,但是无法看到如何添加保持率选项?
谢谢.克雷格.
我想在iOS应用程序(基于WKWebView)中禁用"拍照"选项,并强制用户从库或iCloud中选择照片.
我可以通过capture布尔属性强制用户使用相机:
<input type="file" accept="image/*" multiple capture>
Run Code Online (Sandbox Code Playgroud)
但是,我找不到任何相似的东西完全相反(禁用相机).是否可以使用任何其他HMTL属性或不同的值capture?
类似的问题在这里被问到:如何在文件输入iOS 6上禁用拍照,但建议的解决方案:
我们还可以使用HTML5 new boolean属性请求多个文件.在这种情况下,用户不能将相机用作信号源.
对我不起作用(我试过iOS 9+).
image-uploading ×10
html5 ×2
ios ×2
alamofire ×1
asp.net-3.5 ×1
asp.net-mvc ×1
bulletproof ×1
byte ×1
c# ×1
canvas ×1
class ×1
dropzone.js ×1
file-upload ×1
flask ×1
image ×1
javascript ×1
jquery ×1
linq ×1
paperclip ×1
php ×1
python ×1
swift ×1
wkwebview ×1