  We prove that any Hermitian self-orthogonal $[n,k,d]_{q^2}$ code gives rise
to an $[n,k,d]_{q^2}$ code with $\ell$ dimensional Hermitian hull for $0\le
\ell \le k$. We present a new method to construct Hermitian self-orthogonal
$[n,k]_{q^2}$ codes with large dimensions $k>\frac{n+q-1}{q+1}$. New families
of Hermitian self-orthogonal codes with good parameters are obtained; more
precisely those containing almost MDS codes. By applying a puncturing technique
to Hermitian self-orthogonal codes, MDS $[n,k]_{q^2}$ linear codes with
Hermitian hull having large dimensions $k>\frac{n+q-1}{q+1}$ are also derived.
New families of MDS, almost MDS and optimal codes with arbitrary Hermitian hull
dimensions are explicitly constructed from algebraic curves. As an application,
we provide entanglement-assisted quantum error correcting codes with new
parameters.
