V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX  ›  pepsin  ›  全部回复第 5 页 / 共 108 页
回复总数  2159
1  2  3  4  5  6  7  8  9  10 ... 108  
@iyangyuan 我忘了说另一点了,那个框架是一个大东西的基础,移动适用,所有代码压缩后希望在 10k 内。
@chemzqm 哈哈, 多说无益. 咱们都是新手, 还是虚心接受指导吧.
@iyangyuan 这个当时要兼容 IE5.5 以上到所有平台浏览器, 似乎那个没什么先进的办法, 就采取这种糙办法了. 效率嘛, 其实还好, 这个生产上用好久了. 也没什么差异.
https://github.com/pepsin/Ase 那我趁机推广我的框架好了.

一个极简反人类框架, 比 VanillaJS 多一点点方便. 体积巨小. 文档什么的没有, 因为代码太少了, 随便看看就明白了. 希望大家用这个, 别用 mingge jquery 啥的了.
2016-01-09 17:09:08 +08:00
回复了 kchum 创建的主题 问与答 求推荐个蓝牙耳机? iPhone 用,最好支持类似 EarPods 快捷操作
Beats
2016-01-07 23:29:12 +08:00
回复了 falcon05 创建的主题 问与答 HTML5 游戏如何反作弊?
提交的数据必须是个加密过的字符串, 最好通过 https 传, JS 全局做 minify. 拼字符串的时候分数通过位操作去做.

不能说完全防住, 但是防个大多数稍懂的人也是够了.
2015-12-25 12:07:59 +08:00
回复了 chemzqm 创建的主题 分享创造 来自 Smaritan 的圣诞问候
字体没弄对没有中文呀。整个 Droid Fallback 吧
2015-12-22 14:48:03 +08:00
回复了 ming7435 创建的主题 职场话题 一大波培训机构又毕业了,大家小心!!!
@ming7435 说出来都是泪啊,太可怕了。我们现在都是采取提前要代码的办法,不然根本不行。
2015-12-15 19:57:03 +08:00
回复了 luohaha 创建的主题 分享创造 分享一个自己做的 c 语言爬虫框架 cspider
@luohaha 下回想抓点啥就拿你这个弄哈哈
2015-12-15 19:03:06 +08:00
回复了 luohaha 创建的主题 分享创造 分享一个自己做的 c 语言爬虫框架 cspider
看起来很不错呀
2015-12-12 11:09:27 +08:00
回复了 omysho 创建的主题 git 如何看待项目组长不会用 Git 却指定用 Git?
你应该直接给一个好的合作方式,然后让组长接受。

等着领导帮你打点好一切,那找你干嘛。
2015-12-10 20:18:30 +08:00
回复了 bitdust 创建的主题 分享创造 使用实时更新的卫星照片作为你的桌面壁纸!
@GPU 昨天的不大对,且有内存泄露,现在应该漏的少不少。
2015-12-10 17:09:45 +08:00
回复了 bitdust 创建的主题 分享创造 使用实时更新的卫星照片作为你的桌面壁纸!
@GPU https://gist.github.com/pepsin/2332ef243e3285ca68c6 这个才是对的脚本,图片拼接错误也修正了
2015-12-09 17:15:50 +08:00
回复了 bitdust 创建的主题 分享创造 使用实时更新的卫星照片作为你的桌面壁纸!
@GPU 修复了那个顶部错位的玩意
2015-12-09 17:15:28 +08:00
回复了 bitdust 创建的主题 分享创造 使用实时更新的卫星照片作为你的桌面壁纸!
@GPU require 'net/http'
require "cairo"

def get_url time, x, y
str = "http://himawari8-dl.nict.go.jp/himawari8/img/D531106/20d/550/#{time}00_#{x}_#{y}.png"
end

def merge time
puts "Start image process"
w = 20
h = 20
partial_width = 550
surface = Cairo::ImageSurface.new(w * partial_width, h * partial_width)
cr = Cairo::Context.new(surface)

arr = []
h.times do |y|
w.times do |x|
name = "himawari_#{x}_#{y}.png"
arr.push name
puts name
png = Cairo::ImageSurface.from_png(name)
cr.set_source(*png)
cr.matrix = Cairo::Matrix.new(1,0,0,1,x * partial_width, y * partial_width)
cr.paint()
end
end

cr.target.write_to_png("#{time.split("/").join("_")}.png")
cr.destroy
surface.destroy
arr.each do |file|
File.delete file
end
end

def run time
merge_name = time.split("/").join("_") + ".png"
unless File.exists? merge_name
ts = []
20.times do |x|
thread = Thread.new do
20.times do |y|
name = "himawari_#{x}_#{y}.png"
unless File.exists? name
url = get_url time, x, y
uri = URI.parse(url)
req = Net::HTTP::Get.new uri.path
res = Net::HTTP.start(uri.host, uri.port, use_ssl: false) do |http|
http.request req
end

file = File.open(name, "w+")
file.write(res.body)
file.close
end
end
end
ts.push thread
end
ts.map(&:join)
sleep 5
end

unless File.exists? merge_name
merge time
end
end

24.times do |hour|
hour = hour.to_s
if hour.length < 2
hour = "0" + hour
end
6.times do |minute|
minute = (minute * 10).to_s
if minute.length < 2
minute = "0" + minute
end
str = "2015/12/01/" + hour + minute
puts str
run str
end
end

# run "2015/12/01/0000"
2015-12-09 15:54:49 +08:00
回复了 bitdust 创建的主题 分享创造 使用实时更新的卫星照片作为你的桌面壁纸!
@GPU 之前你 VPS 崩掉估计是我忘了释放内存了。 Cairo 的 Surface 在 20D 精度还是蛮大的。
2015-12-09 15:54:04 +08:00
回复了 bitdust 创建的主题 分享创造 使用实时更新的卫星照片作为你的桌面壁纸!
@GPU 暂时没时间,你自己调整调整呗。我贴个新版的

require 'net/http'
require "cairo"

def get_url time, x, y
str = "http://himawari8-dl.nict.go.jp/himawari8/img/D531106/20d/550/#{time}00_#{x}_#{y}.png"
end

def merge time
puts "Start image process"
w = 1
h = 20
partial_width = 550
surface = Cairo::ImageSurface.new(w * partial_width, h * partial_width)
cr = Cairo::Context.new(surface)

arr = []
w.times do |x|
h.times do |y|
name = "himawari_#{x}_#{y}.png"
arr.push name
puts name
png = Cairo::ImageSurface.from_png(name)
cr.set_source(*png)
cr.matrix = Cairo::Matrix.identity
cr.translate(x * partial_width, y * partial_width)
cr.paint()
end
end

cr.target.write_to_png("#{time.split("/").join("_")}.png")
cr.destroy
surface.destroy
arr.each do |file|
# File.delete file
end
end

def run time
merge_name = time.split("/").join("_") + ".png"
unless File.exists? merge_name
ts = []
1.times do |x|
thread = Thread.new do
20.times do |y|
name = "himawari_#{x}_#{y}.png"
unless File.exists? name
url = get_url time, x, y
uri = URI.parse(url)
req = Net::HTTP::Get.new uri.path
res = Net::HTTP.start(uri.host, uri.port, use_ssl: false) do |http|
http.request req
end

file = File.open(name, "w+")
file.write(res.body)
file.close
end
end
end
ts.push thread
end
ts.map(&:join)
sleep 30
end

unless File.exists? merge_name
merge time
end
end

# 24.times do |hour|
# hour = hour.to_s
# if hour.length < 2
# hour = "0" + hour
# end
# 6.times do |minute|
# minute = (minute * 10).to_s
# if minute.length < 2
# minute = "0" + minute
# end
# str = "2015/12/01/" + hour + minute
# puts str
# run str
# end
# end

run "2015/12/01/0000"
1  2  3  4  5  6  7  8  9  10 ... 108  
关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   我们的愿景   ·   实用小工具   ·   2725 人在线   最高记录 6543   ·     Select Language
创意工作者们的社区
World is powered by solitude
VERSION: 3.9.8.5 · 37ms · UTC 05:12 · PVG 13:12 · LAX 22:12 · JFK 01:12
Developed with CodeLauncher
♥ Do have faith in what you're doing.