gimp 路径工具(3)--封闭路径

ROS开发实践(十三)——ROS中SLAM地图(.pgm格式)编辑软件的安装与使用 一、应用背景 在ROS机器人通过SLAM算法构建好场景地图之后,为了保证ROS机器人的运行效果,我们通常会对场景地图进行修改,这里所说的场景地图通常为 .pgm 格式的文件,如下图所示。 二、地图的编辑与修改 1. ... 阅读详情

下面这个只有三个结点的路径是开放的,如何封闭它呢?只需选中尾结点,然后按住ctrl,然后将鼠标移动到首结点,鼠标左键单击首结点,这个过程也可倒过来

注意:封闭路径只能在首尾两个结点间进行,其它任何两个结点都不能连出直线段或曲线段

 

Mac用户福音:GIMP 2.10.34最新版从安装到设计封面的保姆级教程 本文为Mac用户提供GIMP 2.10.34最新版的保姆级安装与使用教程。详细介绍了从官网或Homebrew安装、核心工作流(图层、选区、路径)到实战设计视频封面的完整步骤,并分享了专为macOS优化的快捷键设置与效率插件,帮助用户高效掌握这款开源图像编辑工具。 阅读详情

相关推荐

从Mid-360点云到ROS导航地图:FAST-LIO建图、PCL滤波与GIMP后处理实战指南

本文详细介绍了如何将Livox Mid-360激光雷达采集的点云数据,通过FAST-LIO算法构建地图,并利用PCL库进行滤波处理,最终转换为ROS导航栈可直接使用的PGM栅格地图和YAML配置文件。文章提供了完整的实战指南,包括点云去顶、动态物体滤波、格式转换以及使用GIMP进行地图后处理优化的具体步骤,旨在帮助机器人开发者高效完成从三维感知到二维导航地图的完整流程。

weixin_29159995的博客 269

GIMP 基本教程

版本:GIMP 2.10.10 OS:Win10 图片素材来源:https://pixabay.com,遵循免费共享协议 本文主要记录笔者使用GIMP的心得,有些具体操作内容会省略,读者可以酌情阅读。 常用快捷键 CTRL+O:打开文件 CTRL+S:保存文件 CTRL+SHIFT+A:取消选框 CTRL+SHIFT+J:缩放图像到适配窗口 CTRL+I:选择反向 图层 类似Inkscape,...

ouening的博客 6万+

使用 Python 实现无人机避障的人工势场算法

人工势场算法是一种基于力的控制方法,通过将目标位置视为一个吸引力源,而将障碍物视为排斥力源,来引导移动体朝着目标前进,同时避开障碍物。接下来,我们将定义几个类来实现人工势场算法,包括无人机类、障碍物类和势场类。

闲人编程的博客 2585

gimp 路径工具(5)--路径的组件

选取路径工具并保证编辑模式为“设计模式” (1)创建一个封闭的路径,如果再在空白处创建一个结点,该结点不会连到前面封闭路径中的任何一个结点上,而是又形成一个独立的分枝 每个独立的分枝称为路径的一个组件 (2)现在如果在空白处再新建结点则会连到刚才新建分枝的尾结点(因为它没有封闭),现在按住shift键再空白处新建一个结点,它并没有连到刚才没有封闭的路径组件的尾结点,而是又建立一个新的分枝...

learning-diary 554

【头歌educoder】离散数学实训参考-第二章-关系-part1-关系基础

python实现离散数学-关系基础-二元关系

wander_alice的博客 8463

Lumerical Python API实战指南(一)——从数据优化到自动化工作流

本文是Lumerical Python API实战指南,旨在帮助用户从繁琐的手动仿真操作转向智能自动化工作流。文章详细介绍了API环境的零基础搭建、核心操作(会话管理、命令执行与数据交换),并通过参数扫描与自动化分析流水线的实战案例,展示了如何利用Python脚本实现从数据优化到自动化仿真的全过程,显著提升光子设计效率。

xxx12的博客 567

gimp 路径工具(6)--路径显示

当你新建一个路径后,一旦你再选择其它工具(比如移动工具),你会发现你新建的路径不见了 打开路径对话框 选中当前路径 在第一个按钮前点击会出现一个眼睛,此时路径会重新出现,再次点击路径会被隐藏 当前路径被显示时会以红线显示 ...

learning-diary 409

SOLIDWORKS2024安装卡顿?Edge WebView2 Runtime冲突的排查与修复

本文针对SOLIDWORKS 2024安装时setup.exe无响应或卡死的常见问题,深入剖析了其根本原因在于Microsoft Edge WebView2 Runtime的版本冲突或组件损坏。文章提供了三种经过验证的解决方案:一是通过运行安装包内swwi\data目录下的setup.exe直接绕过图形界面;二是彻底卸载并重装官方Edge WebView2 Runtime组件;三是进行系统级修复与排查。旨在帮助用户快速定位并解决安装障碍,顺利完成软件部署。

4k5l6j7h8的博客 289

gimp中文版教程_GIMP中文详细教程.pdf

GIMP中文详细教程GIMP 实用系列教程 1文件的打开和存储概述打开GIMP软件其初始界面如下:左边是工具 ,工具箱中每选择一种工具后,通常在其下部会出现一个与其相配的选项栏一起使用的。因此每选好一种工具,首先要把选项栏中的有关选项根据需要选定以后才开始使用。例如:图中选择了画笔,则画笔的选项栏可以选择其不透明度、画笔的笔尖形状、画笔的大小等选项。右边通常可以放置一个图层对话框,如未出现可以在下...

weixin_39716877的博客 6410

信号削峰CFR基础知识介绍(一)

接下来,将得到的峰值分成若干段,在每一段中,仅保留该段内所有峰值中幅度最大的峰值。为了减少不必要的带外泄露,削峰后的信号将通过一个低通滤波器,以减少对应于削峰后信号中尖锐拐角的高频信号。首先,它识别出高于由目标PAPR确定的阈值的峰值。在峰值加窗算法中,削峰是通过在峰值区域将原始信号与一个加窗函数相乘来实现的,如下图所示。其中,w(n) 是一种常见的加窗函数,如凯撒窗、高斯窗和汉明窗等,而 p(n) 是一个加权系数。如上图所示,削峰会导致削峰后的信号出现尖锐的拐角,从而引发不必要的带外辐射(ACP增加)。

weixin_49761275的博客 1549

当OTN网络遭遇LOS告警:5个运维老手才知道的故障定位技巧(含CA动作对照表)

本文深入解析OTN网络中LOS告警的实战定位技巧,涵盖光功率深度诊断、模块差异分析及核心的CA动作机制。通过逆向追踪告警流与对照速查表,帮助运维人员快速锁定故障段落,区分硬软故障,并掌握系统健康度评估方法,从而提升排障效率与网络稳定性。

weixin_29266007的博客 551

gimp教程

图像是GIMP要处理的对象。一个图像对应一个文件,例如一个TIFF或JPEG文件。一个图像对应一个显示窗口。可以同时打开多个图像。

void的博客 1万+

RK3588 hdmirx 调试(含v4l2工具,edid编辑)

RK3588 Buildroot系统中调试HDMI-RX的过程,包括抓图、修改EDID数据、编辑EDID等操作。首先,通过logcat和寄存器信息查询HDMI-RX的状态,使用v4l2-ctl工具进行测试和修改EDID。

501846585_QQAndroid_java 2684

gimp中文版教程_GIMP中文教程.pdf

Gimp 中文教程(一)KangJS2 8 年 12 月一.一.阴影(Drop Shadow)关键点:3 个图层 :1.背景图层(透明)2.阴影图层3.实景图层主要命令 :路径(B),油漆桶填充(shift+B),混合填充(L),移动(M),滤镜-->高斯模糊操作流程:1.CTRL+N 新建一个透明图层2.复制一个阴影图层,使用路径工具在此图层上勾画一个封闭路径并转为选区 .3.复制阴...

weixin_39819661的博客 3565

图文详解秋叶ComfyUI整合包开启密码访问教程(附内网穿透实战经验) ComfyUI密码、ComfyUI-Login、ComfyUI内网穿透、秋叶整合包、ComfyUI安全防护

想远程访问 ComfyUI(跨设备或公网)不希望任何人随意使用或篡改服务需要给 ComfyUI 添加登录验证机制只要按照本文教程,安装插件,并设置好用户名密码,你就能把服务加上一道强力的门槛。📌配合ngrokfrp等内网穿透工具使用公网域名推荐启用 HTTPS(SSL证书可以用宝塔/ZeroSSL 申请)密码可以设置复杂一些,定期更换更安全📬如果你在配置过程中遇到问题,欢迎评论区留言交流,或者私信我,后续我也会更新更多 ComfyUI 插件教程、安全部署经验等内容。

代码简单说 Vue、JAVA、PHP、Node.js 熟练运用,接口、架构、性能全搞定。 2724

深度学习工具包 DeepLearningToolbox

深度学习工具包Deprecation notice.-----This toolbox is outdated and no longer maintained.There are much better tools available for deep learning than this toolbox, e.g. [Theano](http://deeplearning.net/software/theano/), [torch](http://torch.ch/) or [tensorflow](http://www.tensorflow.org/)I would suggest you use one of the tools mentioned above rather than use this toolbox.Best, Rasmus.DeepLearnToolbox================A Matlab toolbox for Deep Learning.Deep Learning is a new subfield of machine learning that focuses on learning deep hierarchical models of data.It is inspired by the human brain&#39;s apparent deep (layered, hierarchical) architecture.A good overview of the theory of Deep Learning theory is[Learning Deep Architectures for AI](http://www.iro.umontreal.ca/~bengioy/papers/ftml_book.pdf)For a more informal introduction, see the following videos by Geoffrey Hinton and Andrew Ng.* [The Next Generation of Neural Networks](http://www.youtube.com/watch?v=AyzOUbkUf3M) (Hinton, 2007)* [Recent Developments in Deep Learning](http://www.youtube.com/watch?v=VdIURAu1-aU) (Hinton, 2010)* [Unsupervised Feature Learning and Deep Learning](http://www.youtube.com/watch?v=ZmNOAtZIgIk) (Ng, 2011)If you use this toolbox in your research please cite [Prediction as a candidate for learning deep hierarchical models of data](http://www2.imm.dtu.dk/pubdb/views/publication_details.php?id=6284)```@MASTERSTHESIS\{IMM2012-06284, author = "R. B. Palm", title = "Prediction as a candidate for learning deep hierarchical models of data", year = "2012",}```Contact: rasmusbergpalm at gmail dot comDirectories included in the toolbox-----------------------------------`NN/` - A library for Feedforward Backpropagation Neural Networks`CNN/` - A library for Convolutional Neural Networks`DBN/` - A library for Deep Belief Networks`SAE/` - A library for Stacked Auto-Encoders`CAE/` - A library for Convolutional Auto-Encoders`util/` - Utility functions used by the libraries`data/` - Data used by the examples`tests/` - unit tests to verify toolbox is workingFor references on each library check REFS.mdSetup-----1. Download.2. addpath(genpath(&#39;DeepLearnToolbox&#39;));Example: Deep Belief Network---------------------```matlabfunction test_example_DBNload mnist_uint8;train_x = double(train_x) / 255;test_x = double(test_x) / 255;train_y = double(train_y);test_y = double(test_y);%% ex1 train a 100 hidden unit RBM and visualize its weightsrand(&#39;state&#39;,0)dbn.sizes = [100];opts.numepochs = 1;opts.batchsize = 100;opts.momentum = 0;opts.alpha = 1;dbn = dbnsetup(dbn, train_x, opts);dbn = dbntrain(dbn, train_x, opts);figure; visualize(dbn.rbm{1}.W&#39;); % Visualize the RBM weights%% ex2 train a 100-100 hidden unit DBN and use its weights to initialize a NNrand(&#39;state&#39;,0)%train dbndbn.sizes = [100 100];opts.numepochs = 1;opts.batchsize = 100;opts.momentum = 0;opts.alpha = 1;dbn = dbnsetup(dbn, train_x, opts);dbn = dbntrain(dbn, train_x, opts);%unfold dbn to nnnn = dbnunfoldtonn(dbn, 10);nn.activation_function = &#39;sigm&#39;;%train nnopts.numepochs = 1;opts.batchsize = 100;nn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.10, &#39;Too big error&#39;);```Example: Stacked Auto-Encoders---------------------```matlabfunction test_example_SAEload mnist_uint8;train_x = double(train_x)/255;test_x = double(test_x)/255;train_y = double(train_y);test_y = double(test_y);%% ex1 train a 100 hidden unit SDAE and use it to initialize a FFNN% Setup and train a stacked denoising autoencoder (SDAE)rand(&#39;state&#39;,0)sae = saesetup([784 100]);sae.ae{1}.activation_function = &#39;sigm&#39;;sae.ae{1}.learningRate = 1;sae.ae{1}.inputZeroMaskedFraction = 0.5;opts.numepochs = 1;opts.batchsize = 100;sae = saetrain(sae, train_x, opts);visualize(sae.ae{1}.W{1}(:,2:end)&#39;)% Use the SDAE to initialize a FFNNnn = nnsetup([784 100 10]);nn.activation_function = &#39;sigm&#39;;nn.learningRate = 1;nn.W{1} = sae.ae{1}.W{1};% Train the FFNNopts.numepochs = 1;opts.batchsize = 100;nn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.16, &#39;Too big error&#39;);```Example: Convolutional Neural Nets---------------------```matlabfunction test_example_CNNload mnist_uint8;train_x = double(reshape(train_x&#39;,28,28,60000))/255;test_x = double(reshape(test_x&#39;,28,28,10000))/255;train_y = double(train_y&#39;);test_y = double(test_y&#39;);%% ex1 Train a 6c-2s-12c-2s Convolutional neural network %will run 1 epoch in about 200 second and get around 11% error. %With 100 epochs you&#39;ll get around 1.2% errorrand(&#39;state&#39;,0)cnn.layers = { struct(&#39;type&#39;, &#39;i&#39;) %input layer struct(&#39;type&#39;, &#39;c&#39;, &#39;outputmaps&#39;, 6, &#39;kernelsize&#39;, 5) %convolution layer struct(&#39;type&#39;, &#39;s&#39;, &#39;scale&#39;, 2) %sub sampling layer struct(&#39;type&#39;, &#39;c&#39;, &#39;outputmaps&#39;, 12, &#39;kernelsize&#39;, 5) %convolution layer struct(&#39;type&#39;, &#39;s&#39;, &#39;scale&#39;, 2) %subsampling layer};cnn = cnnsetup(cnn, train_x, train_y);opts.alpha = 1;opts.batchsize = 50;opts.numepochs = 1;cnn = cnntrain(cnn, train_x, train_y, opts);[er, bad] = cnntest(cnn, test_x, test_y);%plot mean squared errorfigure; plot(cnn.rL);assert(er<0.12, &#39;Too big error&#39;);```Example: Neural Networks---------------------```matlabfunction test_example_NNload mnist_uint8;train_x = double(train_x) / 255;test_x = double(test_x) / 255;train_y = double(train_y);test_y = double(test_y);% normalize[train_x, mu, sigma] = zscore(train_x);test_x = normalize(test_x, mu, sigma);%% ex1 vanilla neural netrand(&#39;state&#39;,0)nn = nnsetup([784 100 10]);opts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samples[nn, L] = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.08, &#39;Too big error&#39;);%% ex2 neural net with L2 weight decayrand(&#39;state&#39;,0)nn = nnsetup([784 100 10]);nn.weightPenaltyL2 = 1e-4; % L2 weight decayopts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, &#39;Too big error&#39;);%% ex3 neural net with dropoutrand(&#39;state&#39;,0)nn = nnsetup([784 100 10]);nn.dropoutFraction = 0.5; % Dropout fraction opts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, &#39;Too big error&#39;);%% ex4 neural net with sigmoid activation functionrand(&#39;state&#39;,0)nn = nnsetup([784 100 10]);nn.activation_function = &#39;sigm&#39;; % Sigmoid activation functionnn.learningRate = 1; % Sigm require a lower learning rateopts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, &#39;Too big error&#39;);%% ex5 plotting functionalityrand(&#39;state&#39;,0)nn = nnsetup([784 20 10]);opts.numepochs = 5; % Number of full sweeps through datann.output = &#39;softmax&#39;; % use softmax outputopts.batchsize = 1000; % Take a mean gradient step over this many samplesopts.plot = 1; % enable plottingnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, &#39;Too big error&#39;);%% ex6 neural net with sigmoid activation and plotting of validation and training error% split training data into training and validation datavx = train_x(1:10000,:);tx = train_x(10001:end,:);vy = train_y(1:10000,:);ty = train_y(10001:end,:);rand(&#39;state&#39;,0)nn = nnsetup([784 20 10]); nn.output = &#39;softmax&#39;; % use softmax outputopts.numepochs = 5; % Number of full sweeps through dataopts.batchsize = 1000; % Take a mean gradient step over this many samplesopts.plot = 1; % enable plottingnn = nntrain(nn, tx, ty, opts, vx, vy); % nntrain takes validation set as last two arguments (optionally)[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, &#39;Too big error&#39;);```[![Bitdeli Badge](https://d2weczhvl823v0.cloudfront.net/rasmusbergpalm/deeplearntoolbox/trend.png)](https://bitdeli.com/free "Bitdeli Badge")

gimp中文版教程_Gimp中文经典入门实用教程.pdf

Gimp中文经典入门实用教程全国最初级的 Linux 社区— bbs.LinuxE—互联网上最适合 Linux 新手的社区GIMP 中文经典入门实用教程(一 )本书内容来源于互联网() ,由 LinuxEye 加工整理成书发布,以28 个详细的图解实例来讲述 GIMP 的基本操作。有问题欢迎到 LinuxE 进行交流,LinuxEye——全球最初级的 Linux 社区!LinuxEye 是一个由山...

weixin_39917718的博客 2650

lwip-2.0.3

lwip是瑞典计算机科学院(SICS)的Adam Dunkels 开发的一个小型开源的TCP/IP协议栈。实现的重点是在保持TCP协议主要功能的基础上减少对RAM 的占用。

gimp中文版教程_Gimp中文经典入门实用教程(合辑).pdf

Gimp中文经典入门实用教程(合辑)全国最初级的 Linux 社区— bbs.LinuxE—互联网上最适合 Linux 新手的社区GIMP 中文经典入门实用教程(一 )本书内容来源于互联网() ,由 LinuxEye 加工整理成书发布,以28 个详细的图解实例来讲述 GIMP 的基本操作。有问题欢迎到 LinuxE 进行交流,LinuxEye——全球最初级的 Linux 社区!LinuxEye 是...

weixin_39605296的博客 1655

Probability and Statistics - 4th edition

Probability and Statistics - 4th edition

pscad IEEE标准系统搭建说明

pscad IEEE标准系统搭建说明,包含典型的IEEE 9节点、14节点、30节点、39节点和118节点系统。内含标准测试系统的原始数据和潮流结果。

PhotoGIMP:为Photoshop用户量身打造的GIMP革命性优化方案

在数字图像处理领域,Adobe Photoshop长期占据主导地位,但高昂的订阅费用和封闭的生态系统让许多用户望而却步。PhotoGIMP应运而生,作为专为Photoshop用户设计的GIMP增强补丁,它通过深度定制让开源图像编辑体验焕然一新,为专业设计师提供了完美的过渡方案。 ## 核心优势:无缝衔接的专业体验 PhotoGIMP最大的价值在于其精心设计的用户界面和工作流程。该项目并非简单地

gitblog_00201的博客 1037

gimp 路径工具(8)--组件的连接

两个非封闭的组件可以进行连接变成一个组件,选取其中一个组件的首结点(或尾结点),然后按下ctrl再选取另一个组件的尾结点(或首结点),就可以将两个非封闭的组件连接成一个组件 ...

learning-diary 296

PhotoGIMP:重塑开源图像编辑的认知边界

PhotoGIMP不只是GIMP的美化补丁,而是一次认知革命。它通过重构配置架构,将Photoshop用户的肌肉记忆无缝迁移到开源生态,打破了商业软件与开源工具之间的心理屏障。这个项目证明:专业级图像编辑体验不应被许可证费用所定义,而应被用户习惯和操作效率所驱动。 ## 行业生态的深层痛点 ### 认知迁移成本:肌肉记忆的囚徒困境 专业图像编辑不仅仅是工具使用,更是肌肉记忆的积累。设计师经过

gitblog_00589的博客 791

探索15款开源创作工具:重塑数字创意新范式

在数字创意领域,开源工具正在重新定义创作边界。从独立艺术家到专业团队,从概念构思到最终输出,开源生态提供了完整的工作流解决方案。本文将探索15款高质量开源创作工具,展示它们如何在不同创作阶段和场景中发挥作用,为创作者提供全新的技术选择。 ## 独立创作者的完整工作流套件 对于独立创作者而言,工具链的完整性和易用性至关重要。开源生态提供了从创意构思到最终输出的全流程解决方案,让创作者能够专注于内

gitblog_00356的博客 1077

重构数字创作:开源工具如何重塑你的创意工作流

在数字创作领域,Adobe软件曾经是无可争议的标准,但高昂的订阅费用和封闭的生态系统让许多创作者陷入"订阅疲劳"的困境。面对每月不断累积的账单和功能限制,技术爱好者和开源软件使用者开始寻求更自由、更可持续的创作路径。本文将通过"问题→解决方案→实施路径"的递进式结构,展示如何通过开源创意工具实现数字创作自由,重构你的创意工作流。 ## 订阅经济的困境与开源解决方案 商业软件的订阅模式不仅带来经

gitblog_00860的博客 492

Adobe替代方案:开源工具迁移的技术选型与实践指南

在软件开发领域,技术选型是项目成功的关键因素,涉及对工具功能、成本效益和生态兼容性的综合评估。随着云计算和开源生态的成熟,越来越多的团队开始从商业软件转向开源替代方案,以降低供应商锁定风险并提升技术自主性。这种迁移不仅涉及直接的成本节约,更需要考虑工作流重构、文件格式转换和团队技能转型等技术实践。特别是在创意软件领域,以Adobe产品为代表的封闭生态正面临GIMP、Inkscape、DaVinci Resolve等开源工具的挑战。通过合理的自动化脚本和CI/CD集成,团队可以实现设计资源的版本控制和批量处理

WGH100817的博客 621

为什么PhotoGIMP能让Photoshop用户零成本迁移到开源图像编辑

对于长期依赖Adobe Photoshop的设计师和创作者来说,高昂的订阅费用和封闭的生态系统已经成为创意工作的隐形枷锁。PhotoGIMP作为专为Photoshop用户设计的开源补丁,通过重新设计GIMP的界面布局和操作逻辑,实现了从商业软件到开源平台的平滑过渡。这个免费解决方案不仅保留了所有专业编辑功能,更让用户能够在3分钟内完成环境迁移,无需重新学习快捷键体系和工作流程。无论你是平面设计师、

gitblog_00565的博客 359

html中图片旋转_HTML中的图片区域链接方法详解——零基础自学网页制作

为图片添加区域链接的基本写法首先我们看看效果:实现这样的功能需要学习以下几点内容。1.认识基本结构首先复制一个html框架,命名为“图片区域链接.html”,示例代码如下: 图片区域链接 向中添加基本结构,示例代码如下: 指定要添加区域链接的图片的路径,如下: 让标签通过的名字来驱使为自...

weixin_39517199的博客 441

html table的边框线怎么变圆角_HTML中的图片区域链接方法详解——零基础自学网页制作...

为图片添加区域链接的基本写法首先我们看看效果:实现这样的功能需要学习以下几点内容。1.认识基本结构首先复制一个html框架,命名为“图片区域链接.html”,示例代码如下: 图片区域链接 向中添加基本结构,示例代码如下: 指定要添加区域链接的图片的路径,如下: 让标签通过的名字来驱使为自...

weixin_39901685的博客 206
上一篇: gimp 路径工具(2)--调整路径
下一篇: gimp 路径工具(4)--插入结点与删除结点及删除线段
learning-diary
博客等级 码龄19年 3粉丝 16原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值