<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[chenshun123的博客]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/chenshun123</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; chenshun123]]></copyright><item><title><![CDATA[js 将本地文本文件转换成图片]]></title><link>https://blog.youkuaiyun.com/chenshun123/article/details/163997891</link><guid>https://blog.youkuaiyun.com/chenshun123/article/details/163997891</guid><author>chenshun123</author><pubDate>Sun, 23 Aug 2026 15:09:18 +0800</pubDate><description><![CDATA[在浏览器中用 JS 实现本地文本文件转图片是纯前端方案，全程在用户本地完成、无需上传服务器。核心思路是： 读取文本 →  绘制文字 → 导出为图片文件。下面是一个开箱即用的 Demo，支持选择本地 txt 文件、自动换行、自定义样式、一键下载图片。
关键步骤说明
1. 读取本地文本
通过 FileReader.readAsText() 读取用户选中的 .txt 文件，指定 UTF-8 编码，全程在浏览器本地执行，不会上传数据。Canvas 原生 fillText() 不支持自动换行，需要手动实现：]]></description><category></category></item><item><title><![CDATA[C#-基本概念]]></title><link>https://blog.youkuaiyun.com/chenshun123/article/details/135438415</link><guid>https://blog.youkuaiyun.com/chenshun123/article/details/135438415</guid><author>chenshun123</author><pubDate>Sun, 07 Jan 2024 13:07:42 +0800</pubDate><description><![CDATA[具有入口点 (entry point) 的程序集称为应用程序 (application)。应用程序运行时，将创建新的应用程序域 (application domain)。同一台计算机上可能会同时运行着同一个应用程序的若干个实例，此时，每一个实例都拥有各自的应用程序域。]]></description><category></category></item><item><title><![CDATA[C#-词法结构]]></title><link>https://blog.youkuaiyun.com/chenshun123/article/details/135437088</link><guid>https://blog.youkuaiyun.com/chenshun123/article/details/135437088</guid><author>chenshun123</author><pubDate>Sun, 07 Jan 2024 11:20:56 +0800</pubDate><description><![CDATA[C# 程序 (program) 由一个或多个源文件 (source file) 组成，源文件的正式名称是编译单元 (compilation unit)。源文件是有序的 Unicode 字符序列。
源文件与文件系统中的文件通常具有一对一的对应关系，但这种对应关系不是必需的。为实现可移植性的最大化，建议这些文件在文件系统中应按 UTF-8 编码规范编码。]]></description><category></category></item><item><title><![CDATA[C#-特性]]></title><link>https://blog.youkuaiyun.com/chenshun123/article/details/135432318</link><guid>https://blog.youkuaiyun.com/chenshun123/article/details/135432318</guid><author>chenshun123</author><pubDate>Sat, 06 Jan 2024 21:21:28 +0800</pubDate><description><![CDATA[C# 程序中的类型、成员和其他实体都支持修饰符，这些修饰符控制它们的行为的某些方面。]]></description><category></category></item><item><title><![CDATA[C#-委托]]></title><link>https://blog.youkuaiyun.com/chenshun123/article/details/135432212</link><guid>https://blog.youkuaiyun.com/chenshun123/article/details/135432212</guid><author>chenshun123</author><pubDate>Sat, 06 Jan 2024 21:13:51 +0800</pubDate><description><![CDATA[委托类型 (delegate type) 表示对具有特定参数列表和返回类型的方法的引用。通过委托，我们能够将方法作为实体赋值给变量和作为参数传递。委托类似于在其他某些语言中的函数指针的概念，但是与函数指针不同，委托是面向对象的，并且是类型安全的。]]></description><category></category></item><item><title><![CDATA[C#-枚举]]></title><link>https://blog.youkuaiyun.com/chenshun123/article/details/135432111</link><guid>https://blog.youkuaiyun.com/chenshun123/article/details/135432111</guid><author>chenshun123</author><pubDate>Sat, 06 Jan 2024 21:06:45 +0800</pubDate><description><![CDATA[枚举类型 (enum type) 是具有一组命名常量的独特的值类型。]]></description><category></category></item><item><title><![CDATA[C#-接口]]></title><link>https://blog.youkuaiyun.com/chenshun123/article/details/135431971</link><guid>https://blog.youkuaiyun.com/chenshun123/article/details/135431971</guid><author>chenshun123</author><pubDate>Sat, 06 Jan 2024 20:58:48 +0800</pubDate><description><![CDATA[接口 (interface) 定义了一个可由类和结构实现的协定。接口可以包含方法、属性、事件和索引器。接口不提供它所定义的成员的实现 — 它仅指定实现该接口的类或结构必须提供的成员。]]></description><category></category></item><item><title><![CDATA[C#-数组]]></title><link>https://blog.youkuaiyun.com/chenshun123/article/details/135431833</link><guid>https://blog.youkuaiyun.com/chenshun123/article/details/135431833</guid><author>chenshun123</author><pubDate>Sat, 06 Jan 2024 20:48:54 +0800</pubDate><description><![CDATA[数组 (array) 是一种包含若干变量的数据结构，这些变量都可以通过计算索引进行访问。数组中包含的变量（又称数组的元素）具有相同的类型，该类型称为数组的元素类型。]]></description><category></category></item><item><title><![CDATA[C#-程序结构]]></title><link>https://blog.youkuaiyun.com/chenshun123/article/details/135429075</link><guid>https://blog.youkuaiyun.com/chenshun123/article/details/135429075</guid><author>chenshun123</author><pubDate>Sat, 06 Jan 2024 17:14:31 +0800</pubDate><description><![CDATA[C# 中的组织结构的关键概念是程序 (program)、命名空间 (namespace)、类型 (type)、成员 (member) 和程序集 (assembly)。]]></description><category></category></item><item><title><![CDATA[Aseprite编译]]></title><link>https://blog.youkuaiyun.com/chenshun123/article/details/135282022</link><guid>https://blog.youkuaiyun.com/chenshun123/article/details/135282022</guid><author>chenshun123</author><pubDate>Fri, 29 Dec 2023 07:51:02 +0800</pubDate><description><![CDATA[Aseprite 编译]]></description><category></category></item><item><title><![CDATA[Unity-序列化和反序列化]]></title><link>https://blog.youkuaiyun.com/chenshun123/article/details/135209940</link><guid>https://blog.youkuaiyun.com/chenshun123/article/details/135209940</guid><author>chenshun123</author><pubDate>Mon, 25 Dec 2023 21:55:48 +0800</pubDate><description><![CDATA[序列化是指把对象转换为字节序列的过程，而反序列化是指把字节序列恢复为对象的过程。序列化最主要的用途就是传递对象和保存对象。
在Unity中保存和加载、prefab、scene、Inspector窗口、实例化预制体等都使用了序列化与反序列化。]]></description><category></category></item><item><title><![CDATA[Unity-GUID]]></title><link>https://blog.youkuaiyun.com/chenshun123/article/details/135209808</link><guid>https://blog.youkuaiyun.com/chenshun123/article/details/135209808</guid><author>chenshun123</author><pubDate>Mon, 25 Dec 2023 21:49:13 +0800</pubDate><description><![CDATA[Unity中的GUID（全局唯一标识符 Globally Unique Identifier）是一个十六字节的字符序列，用于标识和识别Unity中的对象和组件。]]></description><category></category></item><item><title><![CDATA[Unity-.meta文件]]></title><link>https://blog.youkuaiyun.com/chenshun123/article/details/135190955</link><guid>https://blog.youkuaiyun.com/chenshun123/article/details/135190955</guid><author>chenshun123</author><pubDate>Mon, 25 Dec 2023 09:00:23 +0800</pubDate><description><![CDATA[.meta 文件的作用简单来说是建立 Unity 与资源之间的“桥梁”，可以将meta文件理解不同文件之间的桥梁，通过它引擎可以管理不同文件之间的依赖关系。在游戏中引用一个游戏资源，Unity 并不是直接按照文件的路径或者名称，而是使用一个独一无二的 GUID 来指向工程里该资源文件。]]></description><category></category></item><item><title><![CDATA[Unity-时间]]></title><link>https://blog.youkuaiyun.com/chenshun123/article/details/135162585</link><guid>https://blog.youkuaiyun.com/chenshun123/article/details/135162585</guid><author>chenshun123</author><pubDate>Fri, 22 Dec 2023 22:58:57 +0800</pubDate><description><![CDATA[Unity时间处理]]></description><category></category></item><item><title><![CDATA[Unity-生命周期]]></title><link>https://blog.youkuaiyun.com/chenshun123/article/details/135142981</link><guid>https://blog.youkuaiyun.com/chenshun123/article/details/135142981</guid><author>chenshun123</author><pubDate>Fri, 22 Dec 2023 00:24:31 +0800</pubDate><description><![CDATA[Unity 中，有一个特别重要的知识点，生命周期函数。这些东西全部都是系统定义好的，运行时自动调用，但需要继承 MonoBehaviour 类才能使用。这个类是从 Unity 中创建脚本就自动继承了。
正是因为继承了 MonoBehaviour 这个类，Unity 才能依次调用我们的脚本代码，执行游戏逻辑。]]></description><category></category></item><item><title><![CDATA[Unity-类-ScriptableObject]]></title><link>https://blog.youkuaiyun.com/chenshun123/article/details/134612362</link><guid>https://blog.youkuaiyun.com/chenshun123/article/details/134612362</guid><author>chenshun123</author><pubDate>Sat, 25 Nov 2023 11:32:39 +0800</pubDate><description><![CDATA[ScriptableObject 是一个可独立于类实例来保存大量数据的数据容器。ScriptableObject 的一个主要用例是通过避免重复值来减少项目的内存使用量。如果项目有一个预制件在附加的 MonoBehaviour 脚本中存储不变的数据，这将非常有用。]]></description><category></category></item><item><title><![CDATA[Unity-类-Vector]]></title><link>https://blog.youkuaiyun.com/chenshun123/article/details/134612196</link><guid>https://blog.youkuaiyun.com/chenshun123/article/details/134612196</guid><author>chenshun123</author><pubDate>Sat, 25 Nov 2023 11:29:35 +0800</pubDate><description><![CDATA[Vector矢量 是一个基本的数学概念，它允许你描述方向和大小。在游戏和应用中，矢量通常用于描述一些基本属性，如角色的位置、物体移动的速度或两个物体之间的距离。]]></description><category></category></item><item><title><![CDATA[Unity-PlasticSCM]]></title><link>https://blog.youkuaiyun.com/chenshun123/article/details/134612057</link><guid>https://blog.youkuaiyun.com/chenshun123/article/details/134612057</guid><author>chenshun123</author><pubDate>Sat, 25 Nov 2023 11:19:06 +0800</pubDate><description><![CDATA[Unity 项目共享，可以使用一般代码写作软件 Git 或 SVN，也可以使用官方提供的 PlasticSCM]]></description><category></category></item><item><title><![CDATA[Mac/Linux 安装 Go 详解]]></title><link>https://blog.youkuaiyun.com/chenshun123/article/details/126190963</link><guid>https://blog.youkuaiyun.com/chenshun123/article/details/126190963</guid><author>chenshun123</author><pubDate>Sat, 06 Aug 2022 10:49:05 +0800</pubDate><description><![CDATA[Mac/Linux 安装 Go 详解]]></description><category></category></item><item><title><![CDATA[Hive 数据抽样 详解]]></title><link>https://blog.youkuaiyun.com/chenshun123/article/details/125698922</link><guid>https://blog.youkuaiyun.com/chenshun123/article/details/125698922</guid><author>chenshun123</author><pubDate>Sat, 09 Jul 2022 23:01:21 +0800</pubDate><description><![CDATA[只需要抽取一小部分数据进行分析及建模操作。]]></description><category></category></item></channel></rss>