Cara menggunakan PHP dan UniApp untuk melaksanakan fungsi tera air imej

WBOY
Lepaskan: 2023-07-05 09:54:01
asal
1384 orang telah melayarinya

Cara menggunakan PHP dan UniApp untuk melaksanakan fungsi tera air gambar

Pengenalan:
Dalam era media sosial hari ini, gambar telah menjadi salah satu kaedah komunikasi yang biasa digunakan oleh orang ramai. Untuk melindungi gambar mereka dengan lebih baik, ramai orang sering menambah tera air pada gambar. Artikel ini akan memperkenalkan cara menggunakan PHP dan UniApp untuk melaksanakan fungsi tera air imej untuk menjadikan imej anda lebih diperibadikan dan selamat.

1. PHP melaksanakan fungsi tera air imej

  1. Buat fail PHP dan namakannya watermark.php.

// Tentukan teks tera air
$teks = 'Tanda air'

// Tentukan fon tera air
$font = 'msyh.ttc' // Fon Microsoft Yahei digunakan di sini, sila pastikan Fail fon tersedia pada pelayan

// Tentukan saiz fon tera air
$fontsize = 40;

// Tentukan warna teks tera air
$color = imagecolorallocatealpha($imej, 255, 255, 255, 50);

// Buka fail imej sumber
$sourceImage = imagecreatefromjpeg('source.jpg');

// Dapatkan lebar dan tinggi imej sumber
$sourceWidth = imagesx($sourceImage);
$sourceHeight = imagesy ($sourceImage);

/ / Buat imej baharu untuk menambah tera air
$newImage = imagecreatetruecolor($sourceWidth, $sourceHeight);

// Salin imej sumber ke imej baharu
imagecopy($newImage, $sourceImage, 0, 0, 0, 0, $sourceWidth, $sourceHeight);

// Tambahkan teks tera air pada imej baharu
imagettftext($newImage, $fontsize, 0, $sourceWidth * 0.5 - $fontsize 0.5, $sourceHeight * 0.5 + $fontsize 0.5 , $color, $font, $text);

// Output gambar dengan tera air
header('Content-Type: image/jpeg');
imagejpeg($newImage);

// Keluarkan sumber imej
imagedestroy($sourceImage);
imagedestroy($newImage);
?>

  1. Namakan imej yang akan ditanda air sebagai source.jpg dan letakkannya dalam direktori yang sama dengan fail tera air.php.
  2. Lawati watermark.php dalam penyemak imbas anda untuk melihat imej tera air.

2. UniApp melaksanakan fungsi tera air imej

  1. Buat halaman baharu dalam direktori halaman UniApp dan namakannya Tera Air.
  2. Dalam fail vue halaman Tera Air, tambahkan kandungan berikut:

gt; kaedah lalai {

: {

addWatermark() {
  uni.getImageInfo({
    src: '../../static/source.jpg',
    success: (res) => {
      uni.previewImage({
        urls: ['../../static/source.jpg'],
        success: () => {
          uni.showLoading({
            title: '正在添加水印...',
            mask: true
          });
          
          const ctx = uni.createCanvasContext('watermarkCanvas');
          ctx.drawImage(res.path, 0, 0, res.width, res.height);
          ctx.setFontSize(40);
          ctx.setFillStyle('rgba(255, 255, 255, 0.5)');
          ctx.setTextAlign('center');
          ctx.setTextBaseline('middle');
          ctx.fillText('Watermark', res.width * 0.5, res.height * 0.5);
          ctx.draw(false, () => {
            uni.canvasToTempFilePath({
              canvasId: 'watermarkCanvas',
              success: (result) => {
                uni.hideLoading();
                uni.saveImageToPhotosAlbum({
                  filePath: result.tempFilePath,
                  success: () => {
                    uni.showToast({
                      title: '水印已添加',
                      icon: 'success'
                    });
                  },
                  fail: () => {
                    uni.showToast({
                      title: '保存失败',
                      icon: 'none'
                    });
                  }
                });
              },
              fail: () => {
                uni.hideLoading();
                uni.showToast({
                  title: '添加水印失败',
                  icon: 'none'
                });
              }
            });
          });
        }
      });
    },
    fail: () => {
      uni.showToast({
        title: '获取图片信息失败',
        icon: 'none'
      });
    }
  });
}
Salin selepas log masuk

}
};



Namakan imej yang akan ditanda air sebagai source.jpg dan letakkannya dalam direktori statik.

    Tambah "halaman/Tanda Air/indeks" dalam medan halaman dalam fail manifest.json.
  1. Akses projek UniApp dalam penyemak imbas, klik pada imej untuk pratonton, dan tekan lama imej untuk menambah tera air. Tera air akan ditambah secara automatik pada bahagian tengah gambar dan disimpan dalam album foto telefon.
  2. Kesimpulan:
  3. Dengan menggunakan PHP dan UniApp, kami boleh melaksanakan fungsi tera air imej dengan mudah. PHP boleh memproses imej pada bahagian pelayan, manakala UniApp boleh menambah tera air pada bahagian mudah alih. Dengan cara ini, kami bukan sahaja boleh melakukan pemprosesan tera air melalui PHP pada komputer, tetapi juga melakukan operasi tera air pada telefon mudah alih melalui UniApp, yang mudah dan praktikal. Semoga artikel ini dapat membantu anda.

Atas ialah kandungan terperinci Cara menggunakan PHP dan UniApp untuk melaksanakan fungsi tera air imej. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Label berkaitan:
sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan
Tentang kita Penafian Sitemap
Laman web PHP Cina:Latihan PHP dalam talian kebajikan awam,Bantu pelajar PHP berkembang dengan cepat!