jquery页面水印插件,支持多行水印、行错开
最近工作需求,需要在页面上加水印,但发现网上示例无法满足我的需求,所以还是自己动手写。
有几个特别需求:
1.可以写多行水印,并且中心对齐。
2.每行水印错开。
PS:我找到的例子都是单行水印,所以用不了,想做的效果如下。
(图1)
实现思路
实现页面水印主要是有两种方法。
1.DOM元素
就是将水印放置DOM元素里,按一定规律铺设在目标区域。
优点:
(1).元素计算方式相对简单些
缺点:
2.canvas
先将水印写在canvas里,然后生成背景图,用背景图铺设。
优点:
(1).不用担心目标区域动态变化。
缺点:
(2).计算方式复杂。
思量后,选择了第二种实现方式,性能为重。
实现难点
1.canvas没有针对文字的旋转
在canvas绘图里面,没有针对文字旋转的控制,所以只能旋转画布后,对每行文字一个个按规律排放。
如下图,x0y是视区(也就是你能看到的),x’0y’是旋转了A角度后的画布,所以我们在画布绘制时,每行文字的位置都要做一个修正。
(图2)
PS:矩形代表每行文字,width是每行文字的水平间距,height是第一行文字y坐标。
得出每行文字坐标公式是(伪代码):
x = width * cosA;
y = x * tanA + height;
(图3)
所以在错开的方法上,我使用了三个canvas,第一个canvas正式绘制,第二个将文字数组倒过来绘制,将前两个绘制在第三个canvas上,这样就错开了。
3.每行文字长度不等引起的水平间距问题
如下图,a、b是两段文字,较长的b会导致水平方向间距变大,如果直接使用做背景图,那么在背景repeat时候,将存在水平方向长短不一情况,看起来很难受。
(图4)
对于这个问题,我的解决方法是,将a、b两段文字水平方向上重复绘制多次,就变成绘制a、b、a、b、a、b,在足够多的次数后,看到间距就正常。
4.第一行文字x不是从0开始
其实在画布旋转后,在视窗里看到的第一行就不是从0开始(虽然绘制是0),从图2就可以看到,还有一段距离。
(图5)
例如将第一行移到视窗p点,那么就要做tx、ty的修正,伪代码:
tx = height * sinA * cosA;
ty = height * sinA * sinA;
PS:这个地方如果有人看我代码,就会发现ty乘多一个sinA,位移才正确,这一点我也想不懂,希望有人知道告诉我。
代码
我将代码放到GitHub上,有啥建议请提。
代码地址:
最后的效果,其实就是图1。
总结
这是个简单的插件,代码不多,其实本身也不需要jquery,只是习惯性这么实现。这里其实有个重点,就是视区和画布,我在svg文章里面有总结过,可以看看,另外我遇到的几个难点的解决办法,希望对大家有所发现。
Atas ialah kandungan terperinci jquery页面水印插件,支持多行水印、行错开. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Alat AI Hot

Undresser.AI Undress
Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover
Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool
Gambar buka pakaian secara percuma

Clothoff.io
Penyingkiran pakaian AI

Video Face Swap
Tukar muka dalam mana-mana video dengan mudah menggunakan alat tukar muka AI percuma kami!

Artikel Panas

Alat panas

Notepad++7.3.1
Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina
Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1
Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6
Alat pembangunan web visual

SublimeText3 versi Mac
Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Topik panas

Ingin tahu cara menambah tera air pada MeituXiuXiu? Meitu Xiuxiu ialah perisian penyuntingan foto yang sangat mudah digunakan Ia menyediakan fungsi seperti memotong gambar dan meletakkannya pada gambar lain, menukar saiz gambar mengikut kb, mengalih keluar tera air, menukar warna latar belakang foto ID, dan menambah masa. , tera air tarikh dan lokasi ke skrin penuh Bantu pengguna menyelesaikan pengeluaran gambar dengan cepat. Sesetengah pengguna telah mencipta gambar mereka sendiri dan tidak mahu orang lain mencurinya. Mereka mahu menutupnya dengan tera air mereka sendiri, tetapi mereka tidak tahu cara melakukannya? Editor kini akan berkongsi dengan anda cara menambah tera air pada gambar yang cantik! Jika anda suka, datang dan muat turunnya! 1. Bagaimana untuk menambah tera air pada Meitu Xiuxiu? Kongsi cara menambah tera air pada foto yang cantik! 1. Buka versi 2023 Meitu Xiu Xiu yang dimuat turun dari tapak ini. Versi Meitu Xiu Xiu 2023 Kategori: Penggambaran dan pengindahan Muat Turun Meitu Xiu Xiu 2023 versi ialah perisian pengindahan dan pengeditan gambar yang kaya dengan ciri

Mengalih keluar tera air ialah alat yang berguna dalam Pengimbas perisian Sesetengah pengguna tidak pasti cara mengalih keluar tera air dalam Pengimbas Anda boleh mengklik Alih Keluar Tera Air dalam Edit PDF pada antara muka simpan. Seterusnya, editor akan menerangkan Pengguna membawakan pengenalan kepada kami bagaimana untuk membuang tera air Jika anda berminat, datang dan lihat! Tutorial penggunaan Scanner King Bagaimana untuk membuang tera air dengan Scanner King Jawapan: Anda boleh klik pada antara muka simpan untuk mengedit penyingkiran tera air dalam PDF: 1. Masukkan perisian dan klik ikon [Kamera]. 2. Ambil gambar dan imbas dokumen yang perlu ditanda air. 3. Klik [→] untuk meneruskan ke langkah seterusnya. 4. Selepas selesai menyunting, klik [✓]. 5. Klik [Edit PDF]. 6. Pilih [Remove Watermark] di bawah.

Untuk menjadikan foto yang diambil lebih diperibadikan dan unik, Xiaomi Mi 14 menyediakan tetapan tera air foto. Dengan menetapkan tera air foto, pengguna boleh menambah corak, teks dan logo pada foto yang mereka ambil, supaya setiap foto boleh merakam momen dan kenangan berharga dengan lebih baik. Seterusnya, kami akan memperkenalkan cara untuk menetapkan tera air foto dalam Xiaomi 14 untuk menjadikan foto anda lebih diperibadikan dan jelas. Bagaimana untuk menetapkan tera air foto pada Xiaomi Mi 14? 1. Mula-mula klik "Kamera". 2. Kemudian klik "Tetapan". 3. Kemudian cari tera air, dan kemudian anda boleh mula merakam.

Bagaimana untuk mengalih keluar teks salinan penilaian di sudut kanan bawah win1124H2? Apabila kita menggunakan sistem, kadangkala desktop akan memaparkan tera air lutsinar di sudut kanan bawah skrin Jadi bagaimana kita mengalih keluar tera air lutsinar ini? Pengguna boleh terus menggunakan perisian pihak ketiga untuk beroperasi. Biarkan tapak ini memperkenalkan dengan teliti kepada pengguna cara mengalih keluar tera air pada salinan penilaian win1124H2. Untuk mengalih keluar tera air pada salinan penilaian win1124H2, muat turun alat UniversalWatermarkDisabler Selepas menjalankannya, versi sistem semasa dan status tera air akan dipaparkan Jika "Sedia untuk pemasangan" dipaparkan dalam "Status", ia boleh dialih keluar.

1. Kami menggunakan WPS untuk membuka dokumen Terdapat tanda air di dalamnya. Lihat ke bawah. 2. Cari tab Sisip dalam bar menu, pilih ikon pengepala dan pengaki di bawah tab ini, dan klik padanya dengan butang tetikus kiri. 3. Pada masa ini, teks pada halaman menjadi kelabu dan tidak boleh diedit, tetapi tera air di belakang teks boleh diedit pada masa ini. 4. Klik pada watermark, anda boleh melihat bahawa ini adalah watermark gambar, kerana terdapat beberapa petak kecil di sekeliling gambar, dan gambar boleh diedit pada masa ini. 5. Gunakan kekunci padam pada papan kekunci untuk memadam gambar, dan anda boleh melihat bahawa tera air telah hilang. 6. Klik dua kali tetikus pada halaman untuk keluar dari mod penyuntingan pengepala dan pengaki Teks pada halaman kembali kepada warna biasa dan boleh diedit, tetapi pada masa ini tera air pada halaman telah hilang. 7.

Apabila pengguna menggunakan penyemak imbas Edge, mereka mungkin menambahkan beberapa pemalam untuk memenuhi lebih banyak keperluan mereka. Tetapi apabila menambah pemalam, ia menunjukkan bahawa pemalam ini tidak disokong. Bagaimana untuk menyelesaikan masalah ini? Hari ini, editor akan berkongsi dengan anda tiga penyelesaian. Kaedah 1: Cuba gunakan pelayar lain. Kaedah 2: Flash Player pada penyemak imbas mungkin sudah lapuk atau tiada, menyebabkan pemalam tidak disokong Anda boleh memuat turun versi terkini dari tapak web rasmi. Kaedah 3: Tekan kekunci "Ctrl+Shift+Delete" pada masa yang sama. Klik "Kosongkan Data" dan buka semula penyemak imbas.

Apakah direktori pemasangan sambungan pemalam Chrome? Dalam keadaan biasa, direktori pemasangan lalai pelanjutan pemalam Chrome adalah seperti berikut: 1. Lokasi direktori pemasangan lalai pemalam chrome dalam windowsxp: C:\DocumentsandSettings\username\LocalSettings\ApplicationData\Google\Chrome\UserData\ Default\Extensions2 chrome dalam windows7 Lokasi direktori pemasangan lalai pemalam: C:\Users\username\AppData\Local\Google\Chrome\User.

Menambah tera air pada dokumen WPS boleh melindungi hak cipta untuk mengelakkan fail anda daripada disalahgunakan oleh orang lain, dan kerahsiaan sedang dipromosikan di mana-mana sahaja. Sama ada untuk melindungi hak cipta atau mengekalkan kerahsiaan, menambahkan tera air pada dokumen WPS di tempat kerja adalah bermanfaat kepada diri sendiri dan orang lain. Terdapat banyak cara untuk memuatkan tera air Di bawah kami akan berkongsi kaedah mudah tentang cara menambah tera air pada dokumen WPS. 1. Buka dokumen WPS dan klik [Watermark] dalam lajur [Insert] dalam bar alat. 2. Klik segi tiga terbalik kecil di sebelah [Watermark]. Terdapat beberapa templat tera air di dalamnya. 3. Sesuaikan tera air dan klik [+]. 4. Kotak dialog akan muncul, masukkan dalam [Kandungan]
