2019-9-2-win10-uwp-九幽图床
| title | author | date | CreateTime | categories |
|---|---|---|---|---|
|
win10 uwp 九幽图床
|
lindexi
|
2019-09-02 12:57:38 +0800
|
2018-2-13 17:23:3 +0800
|
Win10 UWP
|
本文主要是图片加水印自动上传,代码已经上传github
图片加水印,我的方法,简单,一个好的方法是毒逆天大神的图片加水印方法或http://daily.zhihu.com/story/8812028
我们现在用我的方法,就是加一个TextBlock,然后获得屏幕,很简单,然后我们把水印图保存。
我们可能有很多地方需要上传,我现在使用是九幽,之前有smms的图床,我们做一个通用任务。
Guid 上传的Guid,为了识别任务
File 要上传的图片
Name 上传图片的名字,没有用
OnUploaded 上传完成EventHandler 成功true
Url 上传成功返回图片
Scale 缩放比例,如果没有设置,默认-1,上传图片不缩放
Width 默认-1,图片宽度,有设置上传为设置宽度
Height 默认-1,图片高度
public abstract void UploadImage() 上传图片,不同的类可以有不同上传
我们类需要传StorageFile,这个必须,因为我们上传必须有文件。
我们做类是因为我们可能有很多个图床,九幽一个,smms一个,还有我们现在不知道的。我们都可以通过填写类来做到。
然后每个类一个抽象的UploadImage,根据每个图床不同,上传我们的图片,上传后一般都是使用OnUploaded ,true就是上传成功。
九幽上传很简单,首先是Nuget下载
我们搜索Jiuyou,有很多九幽的,很好用,但是我们这里下载JyCloud
然后我们写九幽上传,我们基层我们通用任务,我们需要写UploadImage
public class JyUploadImage : UploadImageTask
九幽上传可以有多个函数。
sendFileScale 上传图片可以缩放。我们判断Scale》0,如果是,我们就用这函数上传。
sendFileCustom 上传图片设置图片宽度和高度,我们判断(uploadImageTask.Width > 0) && (uploadImageTask.Height > 0)
sendFileOriginal上传原图
sendFileDefault 当图片的宽或高大于某个值时,将高或宽等比缩放到这个值
九幽上传开始需要appKey,这个可以在
http://www.windows.sc创建应用然后得到。
我们先登录http://www.windows.sc,选应用。
我们可以创建应用,我们可以用我们创建的应用,可以看到key
我们创建一个类来放我们的key,我们上传还需要我们的图床密钥。
图床,九幽叫云存储。
我们可以看到我们的key,这个是和应用没关。
我们上传的是我们的StorageFile,上传完可以有ResponseInfo
private async Task UploadImage(UploadImageTask uploadImageTask)
{
//Appid 为静态,有_appid 应用的appid
//_secretId 九幽的
ResponseInfo responseInfo;
if (uploadImageTask.Scale > 0)
{
responseInfo = await JyCloudTool.JyCloudTool.sendFileScale(
AppId._appId, AppId._secretId, uploadImageTask.File,
uploadImageTask.Scale);
}
else if ((uploadImageTask.Width > 0) && (uploadImageTask.Height > 0))
{
responseInfo = await JyCloudTool.JyCloudTool.sendFileCustom(
AppId._appId, AppId._secretId, uploadImageTask.File,
(uint) uploadImageTask.Width, (uint) uploadImageTask.Height);
}
else
{
responseInfo = await JyCloudTool.JyCloudTool.sendFileOriginal(
AppId._appId, AppId._secretId, uploadImageTask.File);
}
if (responseInfo.respose_Status == 0)
{
uploadImageTask.Url = responseInfo.ImgUrl;
uploadImageTask.OnUploaded?.Invoke(uploadImageTask, true);
}
else
{
uploadImageTask.OnUploaded?.Invoke(uploadImageTask, false);
}
}
respose_Status是上传的状态
| 0 | 成功 |
|---|---|
| 1 | 参数缺失 |
| 2 | 服务冻结 |
| 3 | sdk版本过低 |
| 4 | 密钥错误 |
| 5 | 签名错误(请检查SerectId是否正确) |
| -1 | 文件为空 |
| -2 | 文件大小超出限制(8MB) |
| -3 | 接口命令错误 |
| -4 | 服务器报错 |
| -5 | 文件类型不支持 |
| -6 | 积分不足上传失败 |
| -7 | 未检测到网络连接 |
| -8 | 文件格式出错,暂时只支持png,jpg格式 |
源代码:https://github.com/lindexi/UWP/tree/master/uwp/control/BitStamp
2019-9-2-win10-uwp-九幽图床的更多相关文章
- win10 uwp 九幽图床
本文主要是图片加水印自动上传,代码已经上传github. 图片加水印,我的方法,简单,一个好的方法是毒逆天大神的图片加水印方法或http://daily.zhihu.com/story/8812028 ...
- 【广告】win10 uwp 水印图床 含代码
本文主要是广告我的软件. 图床可以加速大家写博客上传图片的时间,通过简化我们的操作来得到加速. 在写博客的时候,我们发现,我们需要上传一张图片,需要先打开图片,然后选择本地图片,然后上传. 但是我经常 ...
- win10 uwp smms图床
本文,如何使用smms图床上传图片,用到win10 uwp post文件,因为我是渣渣,如果本文有错的,请和我说,在本文评论,或发给我邮箱lindexi_gd@163.com,请不要发不良言论 找到一 ...
- win10 UWP 九幽数据分析
九幽数据统计是统计和分析数据来源,用户使用,先申请账号 http://www.windows.sc 创建应用 图片要72*72 记密钥 在项目Nuget 在App.xaml.cs public App ...
- 2018-2-13-win10-uwp-smms图床
title author date CreateTime categories win10 uwp smms图床 lindexi 2018-2-13 17:23:3 +0800 2018-2-13 1 ...
- win10 uwp 入门
UWP是什么我在这里就不说,本文主要是介绍如何入门UWP,也是合并我写的博客. 关于UWP介绍可以参见:http://lib.csdn.net/article/csharp/32451 首先需要申请一 ...
- win10 uwp 使用 asp dotnet core 做图床服务器客户端
原文 win10 uwp 使用 asp dotnet core 做图床服务器客户端 本文告诉大家如何在 UWP 做客户端和 asp dotnet core 做服务器端来做一个图床工具 服务器端 从 ...
- win10 uwp MVVM 轻量框架
如果在开发过程,遇到多个页面之间,需要传输信息,那么可能遇到设计的问题.如果因为一个页面内包含多个子页面和多个子页面之间的通信问题找不到一个好的解决方法,那么请看本文.如果因为ViewModel代码越 ...
- win10 uwp 商业游戏 1.2.1
上一个游戏已经告诉大家如何写多个游戏,现在继续写这个无聊的游戏 希望大家在看这篇文章之前先看win10 uwp 商业游戏,在这个文章告诉了大家如何创建游戏. 修改数值 可以从上一篇的博客的游戏看到升级 ...
随机推荐
- .bat 文件调用python脚本
1.将clearlog.py 脚本放在指定目录 比如 我放在 C:\Users\Administrator\Desktop 上 也就是桌面上 2.创建一个.bat 位后缀名的脚本 3.写入如下脚本 @ ...
- 运行rabbitmq
docker run -d -p 5672:5672 -p 15672:15672 --name myrabbitmq c4663bdca2cd
- Redis Bloom Filter
原创转载请注明出处:https://www.cnblogs.com/agilestyle/p/11632622.html 背景 比如刷抖音的时候,抖音会不停的推荐新的内容,而它每次推荐时候都要去重,以 ...
- python自动刷新抢火车票
#!/usr/bin/env python #-*- coding: utf-8 -*- """ 火车票 可以自动填充账号密码,同时,在登录时,也可以修改账号密码 然后手 ...
- Java序列化及反序列化
序列化概念: 1.Java序列化与反序列化 Java序列化是指把Java对象转换为字节序列的过程:而Java反序列化是指把字节序列恢复为Java对象的过程. 2.为什么需要序列化与反序列化 我们知道 ...
- 谷歌SEO和百度SEO的区别
远程桌面连接 一直有一个现象:关于谷歌优化或只是以谷歌为例谈SEO观点或技术时,经常有读者说,不适用于百度,希望多看到关于百度SEO的帖子上一篇利用规范的标签在谷歌排名中陷害竞争对手的帖子,就有好 ...
- JS中的this指针
1.JS中this指针指向 JS中函数的 this 并不遵守词法作用域规则(即作用域由声明时所处的位置决定),而是取决于函数的调用方式 影响 this 指针的因素有以下: 方法是否由某个对象调用,比如 ...
- 使用vue-i18n实现项目的国际化 以及iview的国际化
一:项目的国际化 vue-i18n官网 1. 在src中新建一个language文件夹(包含index.js.US.js.CN.js) (1)US.js 保存变量的英文,内容: export defa ...
- 【LeetCode 75】颜色分类
题目链接 [题解] 维护一个左边界l和一个右边界r 其中0..l-1都是'0' 而 r+1..n-1都是'2' 我们令i=l;i<=r; 枚举每一个a[i]; ①如果a[i]=2.那么把a[i] ...
- LOJ 2721 「NOI2018」屠龙勇士——扩展中国剩余定理
题目:https://loj.ac/problem/2721 1.注意别一输入 p[ i ] 就 a[ i ] %= p[ i ] ,因为在 multiset 里找的时候还需要真实值. 2.注意用 m ...